diff --git a/disclaimers.json b/disclaimers.json index a9268e72230..fad848d4beb 100644 --- a/disclaimers.json +++ b/disclaimers.json @@ -687,6 +687,10 @@ "api": "datalabeling", "package": "@google-cloud/datalabeling" }, + { + "api": "datamanager", + "package": "@google-ads/datamanager" + }, { "api": "dataqna", "package": "@google-cloud/data-qna" diff --git a/discovery/apigee-v1.json b/discovery/apigee-v1.json index 59bafae9804..0c4ff3afb52 100644 --- a/discovery/apigee-v1.json +++ b/discovery/apigee-v1.json @@ -10405,6 +10405,21 @@ "pattern": "^organizations/[^/]+/securityProfilesV2/[^/]+$", "required": true, "type": "string" + }, + "riskAssessmentType": { + "description": "Optional. The risk assessment type of the security profile. Defaults to ADVANCED_API_SECURITY.", + "enum": [ + "RISK_ASSESSMENT_TYPE_UNSPECIFIED", + "APIGEE", + "API_HUB" + ], + "enumDescriptions": [ + "Risk assessment type is not specified.", + "Risk assessment type is Apigee.", + "Risk assessment type is API Hub." + ], + "location": "query", + "type": "string" } }, "path": "v1/{+name}", @@ -10430,6 +10445,21 @@ "pattern": "^organizations/[^/]+/securityProfilesV2/[^/]+$", "required": true, "type": "string" + }, + "riskAssessmentType": { + "description": "Optional. The risk assessment type of the security profile. Defaults to ADVANCED_API_SECURITY.", + "enum": [ + "RISK_ASSESSMENT_TYPE_UNSPECIFIED", + "APIGEE", + "API_HUB" + ], + "enumDescriptions": [ + "Risk assessment type is not specified.", + "Risk assessment type is Apigee.", + "Risk assessment type is API Hub." + ], + "location": "query", + "type": "string" } }, "path": "v1/{+name}", @@ -10466,6 +10496,21 @@ "pattern": "^organizations/[^/]+$", "required": true, "type": "string" + }, + "riskAssessmentType": { + "description": "Optional. The risk assessment type of the security profiles. Defaults to ADVANCED_API_SECURITY.", + "enum": [ + "RISK_ASSESSMENT_TYPE_UNSPECIFIED", + "APIGEE", + "API_HUB" + ], + "enumDescriptions": [ + "Risk assessment type is not specified.", + "Risk assessment type is Apigee.", + "Risk assessment type is API Hub." + ], + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/securityProfilesV2", @@ -11448,7 +11493,7 @@ } } }, - "revision": "20251016", + "revision": "20251105", "rootUrl": "https://apigee.googleapis.com/", "schemas": { "EdgeConfigstoreBundleBadBundle": { @@ -12813,6 +12858,14 @@ "description": "Request for BatchComputeSecurityAssessmentResults.", "id": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequest", "properties": { + "apiHubApis": { + "$ref": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubApiArray", + "description": "An array of API Hub APIs to assess. A maximum of 1 API can be assessed." + }, + "apiHubGateways": { + "$ref": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubGatewayArray", + "description": "An array of API Hub Gateways to assess. A maximum of 3 gateways can be assessed." + }, "include": { "$ref": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestResourceArray", "description": "Include only these resources." @@ -12835,12 +12888,40 @@ "type": "string" }, "scope": { - "description": "Optional. Scope of the resources for the computation. For Apigee, the environment is the scope of the resources.", + "description": "Optional. Scope of the resources for the computation. When computing scores for Apigee proxies, the scope should be set to the environment of the resources. When computing scores for API Hub deployments, api_hub_scope should be set instead.", "type": "string" } }, "type": "object" }, + "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubApiArray": { + "description": "Message for the array of API Hub APIs.", + "id": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubApiArray", + "properties": { + "apis": { + "description": "Required. The array of API Hub API IDs. Format: `projects/{project}/locations/{location}/apis/{api}`", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubGatewayArray": { + "description": "Message for the array of API Hub Gateways.", + "id": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestApiHubGatewayArray", + "properties": { + "gateways": { + "description": "Required. The array of API Hub Gateway IDs. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestIncludeAll": { "description": "Message for include_all_resources option.", "id": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestIncludeAll", @@ -12866,18 +12947,20 @@ "id": "GoogleCloudApigeeV1BatchComputeSecurityAssessmentResultsRequestResourceArrayResource", "properties": { "name": { - "description": "Required. Name of this resource.", + "description": "Required. Name of this resource. For an Apigee API Proxy, this should be the id of the API proxy. For an API Hub Deployment, this should be the id of the deployment.", "type": "string" }, "type": { "description": "Required. Type of this resource.", "enum": [ "RESOURCE_TYPE_UNSPECIFIED", - "API_PROXY" + "API_PROXY", + "API_HUB_DEPLOYMENT" ], "enumDescriptions": [ "ResourceType not specified.", - "Resource is an Apigee Proxy." + "Resource is an Apigee Proxy.", + "Resource is an API Hub deployment." ], "type": "string" } @@ -18695,8 +18778,13 @@ "description": "Resource for which we are computing security assessment.", "id": "GoogleCloudApigeeV1SecurityAssessmentResultResource", "properties": { + "apiHubDeploymentDetails": { + "$ref": "GoogleCloudApigeeV1SecurityAssessmentResultResourceApiHubDeploymentDetails", + "description": "Output only. Additional details for the API Hub deployment.", + "readOnly": true + }, "name": { - "description": "Required. Name of this resource.", + "description": "Required. Name of this resource. For an Apigee API Proxy, this should be the id of the API proxy. For an API Hub Deployment, this should be the id of the deployment.", "type": "string" }, "resourceRevisionId": { @@ -18707,13 +18795,56 @@ "description": "Required. Type of this resource.", "enum": [ "RESOURCE_TYPE_UNSPECIFIED", - "API_PROXY" + "API_PROXY", + "API_HUB_DEPLOYMENT" ], "enumDescriptions": [ "ResourceType not specified.", - "Resource is an Apigee Proxy." + "Resource is an Apigee Proxy.", + "Resource is an API Hub deployment." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudApigeeV1SecurityAssessmentResultResourceApiHubDeploymentDetails": { + "description": "Additional details if the resource is an API Hub deployment.", + "id": "GoogleCloudApigeeV1SecurityAssessmentResultResourceApiHubDeploymentDetails", + "properties": { + "displayName": { + "description": "The display name of the API Hub deployment.", + "type": "string" + }, + "gateway": { + "description": "The gateway for the API Hub deployment. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`", + "type": "string" + }, + "gatewayType": { + "description": "The gateway type for the API Hub deployment.", + "enum": [ + "API_HUB_GATEWAY_TYPE_UNSPECIFIED", + "APIGEE_X", + "APIGEE_HYBRID", + "APIGEE_EDGE", + "APIGEE_OPDK" + ], + "enumDescriptions": [ + "Gateway type is not specified.", + "Gateway is Apigee X for API Hub.", + "Gateway is Apigee Hybrid for API Hub.", + "Gateway is Apigee Edge for API Hub.", + "Gateway is Apigee OPDK for API Hub." ], "type": "string" + }, + "resourceUri": { + "description": "The resource uri for the API Hub deployment.", + "type": "string" + }, + "sourceProject": { + "description": "The source project for the API Hub deployment.", + "type": "string" } }, "type": "object" @@ -18792,12 +18923,14 @@ "enum": [ "VERDICT_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "NOT_APPLICABLE" ], "enumDescriptions": [ "The verdict is unspecified.", "The assessment has passed.", - "The assessment has failed." + "The assessment has failed.", + "The verdict is not applicable." ], "type": "string" }, @@ -19242,6 +19375,20 @@ "description": "Required. The configuration for each assessment in this profile. Key is the name/id of the assessment.", "type": "object" }, + "riskAssessmentType": { + "description": "Optional. The risk assessment type of the security profile. Defaults to ADVANCED_API_SECURITY.", + "enum": [ + "RISK_ASSESSMENT_TYPE_UNSPECIFIED", + "APIGEE", + "API_HUB" + ], + "enumDescriptions": [ + "Risk assessment type is not specified.", + "Risk assessment type is Apigee.", + "Risk assessment type is API Hub." + ], + "type": "string" + }, "updateTime": { "description": "Output only. The time of the security profile update.", "format": "google-datetime", @@ -19255,6 +19402,10 @@ "description": "The configuration definition for a specific assessment.", "id": "GoogleCloudApigeeV1SecurityProfileV2ProfileAssessmentConfig", "properties": { + "include": { + "$ref": "GoogleCloudApigeeV1SecurityProfileV2ProfileAssessmentConfigApiHubGatewayTypeArray", + "description": "Include only these Gateway Types." + }, "weight": { "description": "The weight of the assessment.", "enum": [ @@ -19274,6 +19425,34 @@ }, "type": "object" }, + "GoogleCloudApigeeV1SecurityProfileV2ProfileAssessmentConfigApiHubGatewayTypeArray": { + "description": "Message for the array of API Hub Gateway Types.", + "id": "GoogleCloudApigeeV1SecurityProfileV2ProfileAssessmentConfigApiHubGatewayTypeArray", + "properties": { + "gatewayTypes": { + "description": "Required. The array of API Hub Gateway Types.", + "items": { + "enum": [ + "API_HUB_GATEWAY_TYPE_UNSPECIFIED", + "APIGEE_X", + "APIGEE_HYBRID", + "APIGEE_EDGE", + "APIGEE_OPDK" + ], + "enumDescriptions": [ + "Gateway type is not specified.", + "Gateway is Apigee X for API Hub.", + "Gateway is Apigee Hybrid for API Hub.", + "Gateway is Apigee Edge for API Hub.", + "Gateway is Apigee OPDK for API Hub." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1SecurityReport": { "description": "SecurityReport saves all the information about the created security report.", "id": "GoogleCloudApigeeV1SecurityReport", diff --git a/discovery/apihub-v1.json b/discovery/apihub-v1.json index 343ae7ab09b..901fe2b107f 100644 --- a/discovery/apihub-v1.json +++ b/discovery/apihub-v1.json @@ -264,6 +264,104 @@ } }, "resources": { + "addons": { + "methods": { + "get": { + "description": "Get an addon.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/addons/{addonsId}", + "httpMethod": "GET", + "id": "apihub.projects.locations.addons.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the addon to get. Format: `projects/{project}/locations/{location}/addons/{addon}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/addons/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApihubV1Addon" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List addons.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/addons", + "httpMethod": "GET", + "id": "apihub.projects.locations.addons.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. An expression that filters the list of addons. The only supported filter is `plugin_instance_name`. It can be used to filter addons that are enabled for a given plugin instance. The format of the filter is `plugin_instance_name = \"projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}\"`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of hub addons to return. The service may return fewer than this value. If unspecified, at most 50 hub addons 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 `ListAddons` call. Provide this to retrieve the subsequent page. When paginating, all other parameters (except page_size) provided to `ListAddons` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource where this addon will be created. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/addons", + "response": { + "$ref": "GoogleCloudApihubV1ListAddonsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "manageConfig": { + "description": "Manage addon config. This RPC is used for managing the config of the addon. Calling this RPC moves the addon into an updating state until the long-running operation succeeds.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/addons/{addonsId}:manageConfig", + "httpMethod": "POST", + "id": "apihub.projects.locations.addons.manageConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the addon for which the config is to be managed. Format: `projects/{project}/locations/{location}/addons/{addon}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/addons/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:manageConfig", + "request": { + "$ref": "GoogleCloudApihubV1ManageAddonConfigRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "apiHubInstances": { "methods": { "create": { @@ -2979,7 +3077,7 @@ } } }, - "revision": "20251025", + "revision": "20251110", "rootUrl": "https://apihub.googleapis.com/", "schemas": { "Empty": { @@ -3031,6 +3129,100 @@ }, "type": "object" }, + "GoogleCloudApihubV1Addon": { + "description": "Addon resource.", + "id": "GoogleCloudApihubV1Addon", + "properties": { + "config": { + "$ref": "GoogleCloudApihubV1AddonConfig", + "description": "Required. The configuration of the addon." + }, + "createTime": { + "description": "Output only. The time at which the addon was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "description": "Required. The data source on which the addon operates. This determines which field in the `config` oneof is used.", + "enum": [ + "DATA_SOURCE_UNSPECIFIED", + "PLUGIN_INSTANCE", + "ALL_DATA" + ], + "enumDescriptions": [ + "The data source of the addon is not specified.", + "Addon operates on data collected from specific plugin instances.", + "Addon operates on all data in the API hub." + ], + "type": "string" + }, + "description": { + "description": "Optional. The description of the addon.", + "type": "string" + }, + "displayName": { + "description": "Required. The display name of the addon.", + "type": "string" + }, + "name": { + "description": "Identifier. The name of the addon to enable. Format: `projects/{project}/locations/{location}/addons/{addon}`.", + "type": "string" + }, + "state": { + "description": "Output only. The state of the addon.", + "enum": [ + "ADDON_STATE_UNSPECIFIED", + "ACTIVE", + "UPDATING", + "ERROR", + "INACTIVE" + ], + "enumDescriptions": [ + "The addon state is not specified.", + "The addon is active.", + "The addon is being updated.", + "The addon is in error state.", + "The addon is inactive." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The time at which the addon was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudApihubV1AddonConfig": { + "description": "Configuration for the addon.", + "id": "GoogleCloudApihubV1AddonConfig", + "properties": { + "allDataAddonConfig": { + "$ref": "GoogleCloudApihubV1AllDataAddonConfig", + "description": "Configuration for addons which act on all data in the API hub." + }, + "gatewayPluginAddonConfig": { + "$ref": "GoogleCloudApihubV1GatewayPluginAddonConfig", + "description": "Configuration for gateway plugin addons." + } + }, + "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", + "properties": { + "enabled": { + "description": "Required. If true, the addon is enabled for all data in the API hub.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudApihubV1AllowedValue": { "description": "The value that can be assigned to the attribute when the data type is enum.", "id": "GoogleCloudApihubV1AllowedValue", @@ -3360,6 +3552,39 @@ }, "type": "object" }, + "GoogleCloudApihubV1ApigeeEdgeConfig": { + "description": "Configuration for Apigee Edge gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance.", + "id": "GoogleCloudApihubV1ApigeeEdgeConfig", + "properties": { + "environmentFilter": { + "$ref": "GoogleCloudApihubV1EnvironmentFilter", + "description": "Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering." + } + }, + "type": "object" + }, + "GoogleCloudApihubV1ApigeeOPDKConfig": { + "description": "Configuration for Apigee OPDK gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance.", + "id": "GoogleCloudApihubV1ApigeeOPDKConfig", + "properties": { + "environmentFilter": { + "$ref": "GoogleCloudApihubV1EnvironmentFilter", + "description": "Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering." + } + }, + "type": "object" + }, + "GoogleCloudApihubV1ApigeeXHybridConfig": { + "description": "Configuration for Apigee X and Apigee Hybrid gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance.", + "id": "GoogleCloudApihubV1ApigeeXHybridConfig", + "properties": { + "environmentFilter": { + "$ref": "GoogleCloudApihubV1EnvironmentFilter", + "description": "Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering." + } + }, + "type": "object" + }, "GoogleCloudApihubV1ApplicationIntegrationEndpointDetails": { "description": "The details of the Application Integration endpoint to be triggered for curation.", "id": "GoogleCloudApihubV1ApplicationIntegrationEndpointDetails", @@ -4455,6 +4680,24 @@ }, "type": "object" }, + "GoogleCloudApihubV1EnvironmentFilter": { + "description": "Filter for environments.", + "id": "GoogleCloudApihubV1EnvironmentFilter", + "properties": { + "allEnvironments": { + "description": "Optional. Indicates if this filter should match all environments or only a subset of environments. If set to true, all environments are matched.", + "type": "boolean" + }, + "environments": { + "description": "Optional. If provided, only environments in this list are matched. This field is ignored if `all_environments` is true.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudApihubV1ExecutePluginInstanceActionRequest": { "description": "The ExecutePluginInstanceAction method's request.", "id": "GoogleCloudApihubV1ExecutePluginInstanceActionRequest", @@ -4549,6 +4792,43 @@ }, "type": "object" }, + "GoogleCloudApihubV1GatewayPluginAddonConfig": { + "description": "Configuration for gateway plugin addons. This is used to specify the list of gateway plugin configs for which the addon is enabled.", + "id": "GoogleCloudApihubV1GatewayPluginAddonConfig", + "properties": { + "gatewayPluginConfigs": { + "description": "Required. The list of gateway plugin configs for which the addon is enabled. Each gateway plugin config should have a unique plugin instance.", + "items": { + "$ref": "GoogleCloudApihubV1GatewayPluginConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudApihubV1GatewayPluginConfig": { + "description": "Configuration for a gateway plugin. This is used to specify configs for different gateways.", + "id": "GoogleCloudApihubV1GatewayPluginConfig", + "properties": { + "apigeeEdgeConfig": { + "$ref": "GoogleCloudApihubV1ApigeeEdgeConfig", + "description": "Configuration for Apigee Edge gateways." + }, + "apigeeOpdkConfig": { + "$ref": "GoogleCloudApihubV1ApigeeOPDKConfig", + "description": "Configuration for Apigee OPDK gateways." + }, + "apigeeXHybridConfig": { + "$ref": "GoogleCloudApihubV1ApigeeXHybridConfig", + "description": "Configuration for Apigee X and Apigee Hybrid gateways." + }, + "pluginInstance": { + "description": "Required. The name of the gateway plugin instance for which the config is to be specified. Format: projects/{project}/locations/{location}/plugins/{plugin}/pluginInstances/{plugin_instance}", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApihubV1GoogleServiceAccountConfig": { "description": "Config for Google service account authentication.", "id": "GoogleCloudApihubV1GoogleServiceAccountConfig", @@ -4881,6 +5161,24 @@ "properties": {}, "type": "object" }, + "GoogleCloudApihubV1ListAddonsResponse": { + "description": "The ListAddons method's response.", + "id": "GoogleCloudApihubV1ListAddonsResponse", + "properties": { + "addons": { + "description": "The list of addons.", + "items": { + "$ref": "GoogleCloudApihubV1Addon" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApihubV1ListApiOperationsResponse": { "description": "The ListApiOperations method's response.", "id": "GoogleCloudApihubV1ListApiOperationsResponse", @@ -5173,6 +5471,17 @@ }, "type": "object" }, + "GoogleCloudApihubV1ManageAddonConfigRequest": { + "description": "The ManageAddonConfig method's request.", + "id": "GoogleCloudApihubV1ManageAddonConfigRequest", + "properties": { + "config": { + "$ref": "GoogleCloudApihubV1AddonConfig", + "description": "Required. The config of the addon to be managed. This config will replace the config present in the addon. The type of the config should match the config type already present in the addon." + } + }, + "type": "object" + }, "GoogleCloudApihubV1ManagePluginInstanceSourceDataRequest": { "description": "The ManagePluginInstanceSourceData method's request.", "id": "GoogleCloudApihubV1ManagePluginInstanceSourceDataRequest", @@ -5658,6 +5967,13 @@ "description": "Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`", "type": "string" }, + "sourceEnvironmentsConfig": { + "additionalProperties": { + "$ref": "GoogleCloudApihubV1SourceEnvironment" + }, + "description": "Optional. The source environment's config present in the gateway instance linked to the plugin instance. The key is the `source_environment` name from the SourceEnvironment message.", + "type": "object" + }, "sourceProjectId": { "description": "Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.", "type": "string" @@ -5983,6 +6299,31 @@ }, "type": "object" }, + "GoogleCloudApihubV1SourceEnvironment": { + "description": "Message representing the source environment details.", + "id": "GoogleCloudApihubV1SourceEnvironment", + "properties": { + "createTime": { + "description": "Optional. The time at which the environment was created at the source.", + "format": "google-datetime", + "type": "string" + }, + "sourceEnvironment": { + "description": "Required. The name of the environment at the source. This should map to Deployment.", + "type": "string" + }, + "sourceEnvironmentUri": { + "description": "The location where additional information about source environments can be found. The location should be relative path of the environment manifest with respect to a plugin instance.", + "type": "string" + }, + "updateTime": { + "description": "Optional. The time at which the environment was last updated at the source.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApihubV1SourceMetadata": { "description": "SourceMetadata represents the metadata for a resource at the source.", "id": "GoogleCloudApihubV1SourceMetadata", diff --git a/discovery/artifactregistry-v1.json b/discovery/artifactregistry-v1.json index 3ebf1240cdd..bcdd3bf0b58 100644 --- a/discovery/artifactregistry-v1.json +++ b/discovery/artifactregistry-v1.json @@ -473,7 +473,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -2493,7 +2493,7 @@ } } }, - "revision": "20251017", + "revision": "20251029", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { diff --git a/discovery/artifactregistry-v1beta1.json b/discovery/artifactregistry-v1beta1.json index 1868ad8fb64..fa15f1bb610 100644 --- a/discovery/artifactregistry-v1beta1.json +++ b/discovery/artifactregistry-v1beta1.json @@ -385,7 +385,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -1182,7 +1182,7 @@ } } }, - "revision": "20250925", + "revision": "20251029", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "Binding": { diff --git a/discovery/artifactregistry-v1beta2.json b/discovery/artifactregistry-v1beta2.json index 1230fd100dd..0a352e6abf9 100644 --- a/discovery/artifactregistry-v1beta2.json +++ b/discovery/artifactregistry-v1beta2.json @@ -447,7 +447,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -1450,7 +1450,7 @@ } } }, - "revision": "20250925", + "revision": "20251029", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { diff --git a/discovery/backupdr-v1.json b/discovery/backupdr-v1.json index 96da9a2bd87..08eca9638f3 100644 --- a/discovery/backupdr-v1.json +++ b/discovery/backupdr-v1.json @@ -2234,7 +2234,7 @@ } } }, - "revision": "20251029", + "revision": "20251105", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { @@ -2646,6 +2646,21 @@ }, "type": "array" }, + "backupRetentionInheritance": { + "description": "Output only. Setting for how the enforced retention end time is inherited. This value is copied from this backup's BackupVault.", + "enum": [ + "BACKUP_RETENTION_INHERITANCE_UNSPECIFIED", + "INHERIT_VAULT_RETENTION", + "MATCH_BACKUP_EXPIRE_TIME" + ], + "enumDescriptions": [ + "Inheritance behavior not set. This will default to `INHERIT_VAULT_RETENTION`.", + "The enforced retention end time of a backup will be inherited from the backup vault's `backup_minimum_enforced_retention_duration` field. This is the default behavior.", + "The enforced retention end time of a backup will always match the expire time of the backup. If this is set, the backup's enforced retention end time will be set to match the expire time during creation of the backup. When updating, the ERET and expire time must be updated together and have the same value. Invalid update requests will be rejected by the server." + ], + "readOnly": true, + "type": "string" + }, "backupType": { "description": "Output only. Type of the backup, unspecified, scheduled or ondemand.", "enum": [ @@ -2719,6 +2734,14 @@ "description": "Output only. Unique identifier of the GCP resource that is being backed up.", "readOnly": true }, + "kmsKeyVersions": { + "description": "Optional. Output only. The list of KMS key versions used to encrypt the backup.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "labels": { "additionalProperties": { "type": "string" @@ -3435,6 +3458,20 @@ "format": "google-duration", "type": "string" }, + "backupRetentionInheritance": { + "description": "Optional. Setting for how a backup's enforced retention end time is inherited.", + "enum": [ + "BACKUP_RETENTION_INHERITANCE_UNSPECIFIED", + "INHERIT_VAULT_RETENTION", + "MATCH_BACKUP_EXPIRE_TIME" + ], + "enumDescriptions": [ + "Inheritance behavior not set. This will default to `INHERIT_VAULT_RETENTION`.", + "The enforced retention end time of a backup will be inherited from the backup vault's `backup_minimum_enforced_retention_duration` field. This is the default behavior.", + "The enforced retention end time of a backup will always match the expire time of the backup. If this is set, the backup's enforced retention end time will be set to match the expire time during creation of the backup. When updating, the ERET and expire time must be updated together and have the same value. Invalid update requests will be rejected by the server." + ], + "type": "string" + }, "createTime": { "description": "Output only. The time when the instance was created.", "format": "google-datetime", @@ -3455,6 +3492,10 @@ "format": "google-datetime", "type": "string" }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config of the backup vault." + }, "etag": { "description": "Optional. Server specified ETag for the backup vault resource to prevent simultaneous updates from overwiting each other.", "type": "string" @@ -4566,6 +4607,17 @@ "properties": {}, "type": "object" }, + "EncryptionConfig": { + "description": "Message describing the EncryptionConfig of backup vault. This determines how data within the vault is encrypted at rest.", + "id": "EncryptionConfig", + "properties": { + "kmsKeyName": { + "description": "Optional. The Cloud KMS key name to encrypt backups in this backup vault. Must be in the same region as the vault. Some workload backups like compute disk backups may use their inherited source key instead. Format: projects/{project}/locations/{location}/keyRings/{ring}/cryptoKeys/{key}", + "type": "string" + } + }, + "type": "object" + }, "Entry": { "description": "A key/value pair to be used for storing metadata.", "id": "Entry", @@ -5879,6 +5931,11 @@ "description": "Request message for restoring from a Backup.", "id": "RestoreBackupRequest", "properties": { + "clearOverridesFieldMask": { + "description": "Optional. A field mask used to clear server-side default values for fields within the `instance_properties` oneof. When a field in this mask is cleared, the server will not apply its default logic (like inheriting a value from the source) for that field. The most common current use case is clearing default encryption keys. Examples of field mask paths: - Compute Instance Disks: `compute_instance_restore_properties.disks.*.disk_encryption_key` - Single Disk: `disk_restore_properties.disk_encryption_key`", + "format": "google-fieldmask", + "type": "string" + }, "computeInstanceRestoreProperties": { "$ref": "ComputeInstanceRestoreProperties", "description": "Compute Engine instance properties to be overridden during restore." @@ -6402,6 +6459,13 @@ "format": "int32", "type": "integer" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels to be applied on the backup.", + "type": "object" + }, "requestId": { "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", "type": "string" diff --git a/discovery/beyondcorp-v1.json b/discovery/beyondcorp-v1.json index 5ee01508450..ef95e19aa01 100644 --- a/discovery/beyondcorp-v1.json +++ b/discovery/beyondcorp-v1.json @@ -12,7 +12,7 @@ "baseUrl": "https://beyondcorp.googleapis.com/", "batchPath": "batch", "canonicalName": "BeyondCorp", - "description": "Beyondcorp Enterprise provides identity and context aware access controls for enterprise resources and enables zero-trust access. Using the Beyondcorp Enterprise APIs, enterprises can set up multi-cloud and on-prem connectivity solutions.", + "description": "Chrome Enterprise Premium is a secure enterprise browsing solution that provides secure access to applications and resources, and offers integrated threat and data protection. It adds an extra layer of security to safeguard your Chrome browser environment, including Data Loss Prevention (DLP), real-time URL and file scanning, and Context-Aware Access for SaaS and web apps.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/", "fullyEncodeReservedExpansion": true, @@ -280,7 +280,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -1909,7 +1909,7 @@ } } }, - "revision": "20250930", + "revision": "20251029", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -3157,7 +3157,7 @@ "type": "string" }, "endpointMatchers": { - "description": "Required. Endpoint matchers associated with an application. A combination of hostname and ports as endpoint matchers is used to match the application. Match conditions for OR logic. An array of match conditions to allow for multiple matching criteria. The rule is considered a match if one of the conditions is met. The conditions should be the following combination: (Hostname & Ports) EXAMPLES: Hostname and Ports - (\"*.example.com\", \"443\"), (\"example.com\" and \"22\"), (\"example.com\" and \"22,33\") etc", + "description": "Optional. An array of conditions to match the application's network endpoint. Each element in the array is an EndpointMatcher object, which defines a specific combination of a hostname pattern and one or more ports. The application is considered matched if at least one of the EndpointMatcher conditions in this array is met (the conditions are combined using OR logic). Each EndpointMatcher must contain a hostname pattern, such as \"example.com\", and one or more port numbers specified as a string, such as \"443\". Hostname and port number examples: \"*.example.com\", \"443\" \"example.com\" and \"22\" \"example.com\" and \"22,33\"", "items": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1EndpointMatcher" }, @@ -3251,11 +3251,11 @@ "properties": { "deviceInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedDeviceInfo", - "description": "Optional. Device info configuration." + "description": "Optional. The device information configuration." }, "groupInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedGroupInfo", - "description": "Optional. Group info configuration." + "description": "Optional. Group details." }, "outputType": { "description": "Optional. Default output type for all enabled headers.", @@ -3266,7 +3266,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -3275,17 +3275,17 @@ }, "userInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedUserInfo", - "description": "Optional. User info configuration." + "description": "Optional. User details." } }, "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedDeviceInfo": { - "description": "Delegated device info configuration.", + "description": "The delegated device information configuration.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedDeviceInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated device info.", + "description": "Optional. The output type details for the delegated device.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -3293,7 +3293,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -3304,11 +3304,11 @@ "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedGroupInfo": { - "description": "Delegated group info configuration.", + "description": "The delegated group configuration details.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedGroupInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated group info.", + "description": "Optional. The output type of the delegated group information.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -3316,7 +3316,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -3327,11 +3327,11 @@ "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedUserInfo": { - "description": "Delegated user info configuration.", + "description": "The configuration information for the delegated user.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedUserInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated user info.", + "description": "Optional. The delegated user's information.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -3339,7 +3339,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -3388,7 +3388,7 @@ "type": "string" }, "ports": { - "description": "Required. Ports of the application.", + "description": "Required. The ports of the application.", "items": { "format": "int32", "type": "integer" @@ -3494,7 +3494,7 @@ "description": "Optional. Configuration for the contextual headers." }, "gatewayIdentity": { - "description": "Optional. Gateway identity configuration.", + "description": "Optional. The security gateway identity configuration.", "enum": [ "GATEWAY_IDENTITY_UNSPECIFIED", "RESOURCE_NAME" @@ -3509,7 +3509,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: > Field names SHOULD constrain themselves to alphanumeric characters, \"-\", and \".\", and SHOULD begin with a letter. Field values SHOULD contain only ASCII printable characters and tab.", + "description": "Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: >Field names can contain alphanumeric characters, hyphens, and periods, can contain only ASCII-printable characters and tabs, and must start with a letter.", "type": "object" } }, @@ -3664,7 +3664,7 @@ "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor", "properties": { "path": { - "description": "Required. Contains uri path fragment where HTTP request is sent.", + "description": "Required. 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 0800ea107b5..23f6b20cc79 100644 --- a/discovery/beyondcorp-v1alpha.json +++ b/discovery/beyondcorp-v1alpha.json @@ -12,7 +12,7 @@ "baseUrl": "https://beyondcorp.googleapis.com/", "batchPath": "batch", "canonicalName": "BeyondCorp", - "description": "Beyondcorp Enterprise provides identity and context aware access controls for enterprise resources and enables zero-trust access. Using the Beyondcorp Enterprise APIs, enterprises can set up multi-cloud and on-prem connectivity solutions.", + "description": "Chrome Enterprise Premium is a secure enterprise browsing solution that provides secure access to applications and resources, and offers integrated threat and data protection. It adds an extra layer of security to safeguard your Chrome browser environment, including Data Loss Prevention (DLP), real-time URL and file scanning, and Context-Aware Access for SaaS and web apps.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/", "fullyEncodeReservedExpansion": true, @@ -795,7 +795,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -3445,7 +3445,7 @@ } } }, - "revision": "20250930", + "revision": "20251029", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -5512,7 +5512,7 @@ "type": "string" }, "endpointMatchers": { - "description": "Required. Endpoint matchers associated with an application. A combination of hostname and ports as endpoint matchers is used to match the application. Match conditions for OR logic. An array of match conditions to allow for multiple matching criteria. The rule is considered a match if one of the conditions is met. The conditions should be the following combination: (Hostname & Ports) EXAMPLES: Hostname and Ports - (\"*.example.com\", \"443\"), (\"example.com\" and \"22\"), (\"example.com\" and \"22,33\") etc", + "description": "Optional. An array of conditions to match the application's network endpoint. Each element in the array is an EndpointMatcher object, which defines a specific combination of a hostname pattern and one or more ports. The application is considered matched if at least one of the EndpointMatcher conditions in this array is met (the conditions are combined using OR logic). Each EndpointMatcher must contain a hostname pattern, such as \"example.com\", and one or more port numbers specified as a string, such as \"443\". Hostname and port number examples: \"*.example.com\", \"443\" \"example.com\" and \"22\" \"example.com\" and \"22,33\"", "items": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaEndpointMatcher" }, @@ -5606,11 +5606,11 @@ "properties": { "deviceInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedDeviceInfo", - "description": "Optional. Device info configuration." + "description": "Optional. The device information configuration." }, "groupInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedGroupInfo", - "description": "Optional. Group info configuration." + "description": "Optional. Group details." }, "outputType": { "description": "Optional. Default output type for all enabled headers.", @@ -5621,7 +5621,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -5630,17 +5630,17 @@ }, "userInfo": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedUserInfo", - "description": "Optional. User info configuration." + "description": "Optional. User details." } }, "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedDeviceInfo": { - "description": "Delegated device info configuration.", + "description": "The delegated device information configuration.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedDeviceInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated device info.", + "description": "Optional. The output type details for the delegated device.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -5648,7 +5648,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -5659,11 +5659,11 @@ "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedGroupInfo": { - "description": "Delegated group info configuration.", + "description": "The delegated group configuration details.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedGroupInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated group info.", + "description": "Optional. The output type of the delegated group information.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -5671,7 +5671,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -5682,11 +5682,11 @@ "type": "object" }, "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedUserInfo": { - "description": "Delegated user info configuration.", + "description": "The configuration information for the delegated user.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedUserInfo", "properties": { "outputType": { - "description": "Optional. The output type of the delegated user info.", + "description": "Optional. The delegated user's information.", "enum": [ "OUTPUT_TYPE_UNSPECIFIED", "PROTOBUF", @@ -5694,7 +5694,7 @@ "NONE" ], "enumDescriptions": [ - "Unspecified output type.", + "The unspecified output type.", "Protobuf output type.", "JSON output type.", "Explicitly disable header output." @@ -5743,7 +5743,7 @@ "type": "string" }, "ports": { - "description": "Required. Ports of the application.", + "description": "Required. The ports of the application.", "items": { "format": "int32", "type": "integer" @@ -5849,7 +5849,7 @@ "description": "Optional. Configuration for the contextual headers." }, "gatewayIdentity": { - "description": "Optional. Gateway identity configuration.", + "description": "Optional. The security gateway identity configuration.", "enum": [ "GATEWAY_IDENTITY_UNSPECIFIED", "RESOURCE_NAME" @@ -5864,7 +5864,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: > Field names SHOULD constrain themselves to alphanumeric characters, \"-\", and \".\", and SHOULD begin with a letter. Field values SHOULD contain only ASCII printable characters and tab.", + "description": "Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: >Field names can contain alphanumeric characters, hyphens, and periods, can contain only ASCII-printable characters and tabs, and must start with a letter.", "type": "object" } }, @@ -6019,7 +6019,7 @@ "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor", "properties": { "path": { - "description": "Required. Contains uri path fragment where HTTP request is sent.", + "description": "Required. Contains the URI path fragment where HTTP request is sent.", "type": "string" } }, diff --git a/discovery/bigquerydatatransfer-v1.json b/discovery/bigquerydatatransfer-v1.json index eff0ad0ac63..c04bad5e018 100644 --- a/discovery/bigquerydatatransfer-v1.json +++ b/discovery/bigquerydatatransfer-v1.json @@ -418,7 +418,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -1488,7 +1488,7 @@ } } }, - "revision": "20251020", + "revision": "20251105", "rootUrl": "https://bigquerydatatransfer.googleapis.com/", "schemas": { "CheckValidCredsRequest": { diff --git a/discovery/chat-v1.json b/discovery/chat-v1.json index 3182b6f2c90..903944d5acd 100644 --- a/discovery/chat-v1.json +++ b/discovery/chat-v1.json @@ -1535,7 +1535,7 @@ } } }, - "revision": "20251029", + "revision": "20251109", "rootUrl": "https://chat.googleapis.com/", "schemas": { "AccessSettings": { @@ -1802,7 +1802,7 @@ "readOnly": true }, "name": { - "description": "Optional. Resource name of the attachment, in the form `spaces/{space}/messages/{message}/attachments/{attachment}`.", + "description": "Identifier. Resource name of the attachment. Format: `spaces/{space}/messages/{message}/attachments/{attachment}`.", "type": "string" }, "source": { @@ -2649,7 +2649,7 @@ "type": "string" }, "expressionData": { - "description": "The expression data for the card. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "The expression data for the card. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "items": { "$ref": "GoogleAppsCardV1ExpressionData" }, @@ -2961,7 +2961,7 @@ "type": "object" }, "GoogleAppsCardV1CommonWidgetAction": { - "description": "Represents an action that is not specific to a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents an action that is not specific to a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1CommonWidgetAction", "properties": { "updateVisibilityAction": { @@ -2972,7 +2972,7 @@ "type": "object" }, "GoogleAppsCardV1Condition": { - "description": "Represents a condition that can be used to trigger an action. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents a condition that can be used to trigger an action. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1Condition", "properties": { "actionRuleId": { @@ -2987,7 +2987,7 @@ "type": "object" }, "GoogleAppsCardV1DataSourceConfig": { - "description": "A configuration object that helps configure the data sources for a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "A configuration object that helps configure the data sources for a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1DataSourceConfig", "properties": { "platformDataSource": { @@ -3007,7 +3007,7 @@ "properties": { "hostAppDataSource": { "$ref": "HostAppDataSourceMarkup", - "description": "A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Only supported by Google Workspace Workflows, but not Google Chat API or Google Workspace Add-ons." + "description": "A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps." }, "label": { "description": "The text that prompts users to input a date, a time, or a date and time. For example, if users are scheduling an appointment, use a label such as `Appointment date` or `Appointment date and time`.", @@ -3131,7 +3131,7 @@ "type": "object" }, "GoogleAppsCardV1EventAction": { - "description": "Represents an actionthat can be performed on an ui element. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents an actionthat can be performed on an ui element. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1EventAction", "properties": { "actionRuleId": { @@ -3153,7 +3153,7 @@ "type": "object" }, "GoogleAppsCardV1ExpressionData": { - "description": "Represents the data that is used to evaluate an expression. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents the data that is used to evaluate an expression. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1ExpressionData", "properties": { "conditions": { @@ -3182,7 +3182,7 @@ "type": "object" }, "GoogleAppsCardV1ExpressionDataCondition": { - "description": "Represents a condition that is evaluated using CEL. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents a condition that is evaluated using CEL. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1ExpressionDataCondition", "properties": { "conditionType": { @@ -3560,7 +3560,7 @@ "type": "string" }, "id": { - "description": "A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "type": "string" }, "uncollapsibleWidgetsCount": { @@ -3583,7 +3583,7 @@ "id": "GoogleAppsCardV1SelectionInput", "properties": { "dataSourceConfigs": { - "description": "Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source. If specified, the `multi_select_max_selected_items` field, `multi_select_min_query_length` field, `external_data_source` field and `platform_data_source` field are ignored. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source. If specified, the `multi_select_max_selected_items` field, `multi_select_min_query_length` field, `external_data_source` field and `platform_data_source` field are ignored. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "items": { "$ref": "GoogleAppsCardV1DataSourceConfig" }, @@ -3594,7 +3594,7 @@ "description": "An external data source, such as a relational database." }, "hintText": { - "description": "Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible. Only supported by Google Workspace Workflows, but not Google Chat API or Google Workspace Add-ons.", + "description": "Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "type": "string" }, "items": { @@ -3753,7 +3753,7 @@ }, "hostAppDataSource": { "$ref": "HostAppDataSourceMarkup", - "description": "A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons." + "description": "A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps." }, "initialSuggestions": { "$ref": "GoogleAppsCardV1Suggestions", @@ -3829,7 +3829,7 @@ "type": "object" }, "GoogleAppsCardV1Trigger": { - "description": "Represents a trigger. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents a trigger. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1Trigger", "properties": { "actionRuleId": { @@ -3840,7 +3840,7 @@ "type": "object" }, "GoogleAppsCardV1UpdateVisibilityAction": { - "description": "Represents an action that updates the visibility of a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Represents an action that updates the visibility of a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "id": "GoogleAppsCardV1UpdateVisibilityAction", "properties": { "visibility": { @@ -3925,7 +3925,7 @@ "description": "Displays a horizontal line divider between widgets. For example, the following JSON creates a divider: ``` \"divider\": { } ```" }, "eventActions": { - "description": "Specifies the event actions that can be performed on the widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Specifies the event actions that can be performed on the widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "items": { "$ref": "GoogleAppsCardV1EventAction" }, @@ -3952,7 +3952,7 @@ "type": "string" }, "id": { - "description": "A unique ID assigned to the widget that's used to identify the widget to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+` and. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "A unique ID assigned to the widget that's used to identify the widget to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+` and. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "type": "string" }, "image": { @@ -3972,7 +3972,7 @@ "description": "Displays a text paragraph. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting). For example, the following JSON creates a bolded text: ``` \"textParagraph\": { \"text\": \" *bold text*\" } ```" }, "visibility": { - "description": "Specifies whether the widget is visible or hidden. The default value is `VISIBLE`. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons.", + "description": "Specifies whether the widget is visible or hidden. The default value is `VISIBLE`. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps.", "enum": [ "VISIBILITY_UNSPECIFIED", "VISIBLE", diff --git a/discovery/cloudbuild-v1.json b/discovery/cloudbuild-v1.json index 2e8ce184669..7d6ec26790a 100644 --- a/discovery/cloudbuild-v1.json +++ b/discovery/cloudbuild-v1.json @@ -2573,7 +2573,7 @@ } } }, - "revision": "20250930", + "revision": "20251111", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -3721,6 +3721,11 @@ "description": "An image built by the pipeline.", "id": "BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -5712,6 +5717,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -5732,6 +5742,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -5752,6 +5767,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "FileHashes", "description": "Hash types and values of the npm package." @@ -5772,6 +5792,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/cloudfunctions-v2.json b/discovery/cloudfunctions-v2.json index d7ca3553754..1a7c0ff13c9 100644 --- a/discovery/cloudfunctions-v2.json +++ b/discovery/cloudfunctions-v2.json @@ -755,7 +755,7 @@ } } }, - "revision": "20251023", + "revision": "20251106", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { @@ -2160,7 +2160,8 @@ "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL", "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR", "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR", - "COMMIT_FUNCTION_UPGRADE_ERROR" + "COMMIT_FUNCTION_UPGRADE_ERROR", + "COMMIT_FUNCTION_UPGRADE_ERROR_ROLLBACK_SAFE" ], "enumDescriptions": [ "Unspecified state. Most functions are in this upgrade state.", @@ -2173,7 +2174,8 @@ "RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.", "RedirectFunctionUpgradeTraffic API was un-successful.", "RollbackFunctionUpgradeTraffic API was un-successful.", - "CommitFunctionUpgrade API was un-successful." + "CommitFunctionUpgrade API was un-successful and 1st gen function might have broken.", + "CommitFunctionUpgrade API was un-successful but safe to rollback traffic or abort." ], "type": "string" } diff --git a/discovery/cloudfunctions-v2alpha.json b/discovery/cloudfunctions-v2alpha.json index 7d2c3a2399a..9aca49f3aba 100644 --- a/discovery/cloudfunctions-v2alpha.json +++ b/discovery/cloudfunctions-v2alpha.json @@ -755,7 +755,7 @@ } } }, - "revision": "20251023", + "revision": "20251106", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { @@ -2203,7 +2203,8 @@ "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL", "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR", "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR", - "COMMIT_FUNCTION_UPGRADE_ERROR" + "COMMIT_FUNCTION_UPGRADE_ERROR", + "COMMIT_FUNCTION_UPGRADE_ERROR_ROLLBACK_SAFE" ], "enumDescriptions": [ "Unspecified state. Most functions are in this upgrade state.", @@ -2216,7 +2217,8 @@ "RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.", "RedirectFunctionUpgradeTraffic API was un-successful.", "RollbackFunctionUpgradeTraffic API was un-successful.", - "CommitFunctionUpgrade API was un-successful." + "CommitFunctionUpgrade API was un-successful and 1st gen function might have broken.", + "CommitFunctionUpgrade API was un-successful but safe to rollback traffic or abort." ], "type": "string" } diff --git a/discovery/cloudfunctions-v2beta.json b/discovery/cloudfunctions-v2beta.json index 60aebd8f927..cfc66755737 100644 --- a/discovery/cloudfunctions-v2beta.json +++ b/discovery/cloudfunctions-v2beta.json @@ -755,7 +755,7 @@ } } }, - "revision": "20251023", + "revision": "20251106", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { @@ -2203,7 +2203,8 @@ "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL", "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR", "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR", - "COMMIT_FUNCTION_UPGRADE_ERROR" + "COMMIT_FUNCTION_UPGRADE_ERROR", + "COMMIT_FUNCTION_UPGRADE_ERROR_ROLLBACK_SAFE" ], "enumDescriptions": [ "Unspecified state. Most functions are in this upgrade state.", @@ -2216,7 +2217,8 @@ "RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.", "RedirectFunctionUpgradeTraffic API was un-successful.", "RollbackFunctionUpgradeTraffic API was un-successful.", - "CommitFunctionUpgrade API was un-successful." + "CommitFunctionUpgrade API was un-successful and 1st gen function might have broken.", + "CommitFunctionUpgrade API was un-successful but safe to rollback traffic or abort." ], "type": "string" } diff --git a/discovery/cloudresourcemanager-v1.json b/discovery/cloudresourcemanager-v1.json index 3f0a672f3ea..525ad964684 100644 --- a/discovery/cloudresourcemanager-v1.json +++ b/discovery/cloudresourcemanager-v1.json @@ -1171,7 +1171,7 @@ } } }, - "revision": "20250606", + "revision": "20251103", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "Ancestor": { @@ -1567,7 +1567,8 @@ "CYCLE_INTRODUCED_VIOLATION", "FOLDER_BEING_MOVED_VIOLATION", "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" + "DELETED_FOLDER_HEIGHT_VIOLATION", + "FOLDER_TO_DELETE_CONFIGURED_CAPABILITY_VIOLATION" ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", @@ -1579,7 +1580,8 @@ "The attempted action would introduce cycle in resource path.", "The attempted action would move a folder that is already being moved.", "The folder the caller is trying to delete contains active resources.", - "The attempted action would violate the max deleted folder depth constraint." + "The attempted action would violate the max deleted folder depth constraint.", + "The folder being deleted has a configured capability." ], "type": "string" } diff --git a/discovery/cloudresourcemanager-v2.json b/discovery/cloudresourcemanager-v2.json index d085efac408..9c18a4fc38a 100644 --- a/discovery/cloudresourcemanager-v2.json +++ b/discovery/cloudresourcemanager-v2.json @@ -450,7 +450,7 @@ } } }, - "revision": "20250417", + "revision": "20251103", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "AuditConfig": { @@ -811,7 +811,8 @@ "CYCLE_INTRODUCED_VIOLATION", "FOLDER_BEING_MOVED_VIOLATION", "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" + "DELETED_FOLDER_HEIGHT_VIOLATION", + "FOLDER_TO_DELETE_CONFIGURED_CAPABILITY_VIOLATION" ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", @@ -823,7 +824,8 @@ "The attempted action would introduce cycle in resource path.", "The attempted action would move a folder that is already being moved.", "The folder the caller is trying to delete contains active resources.", - "The attempted action would violate the max deleted folder depth constraint." + "The attempted action would violate the max deleted folder depth constraint.", + "The folder being deleted has a configured capability." ], "type": "string" } diff --git a/discovery/cloudresourcemanager-v2beta1.json b/discovery/cloudresourcemanager-v2beta1.json index 073c7384f89..c1a979f2af7 100644 --- a/discovery/cloudresourcemanager-v2beta1.json +++ b/discovery/cloudresourcemanager-v2beta1.json @@ -450,7 +450,7 @@ } } }, - "revision": "20250417", + "revision": "20251103", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "AuditConfig": { @@ -811,7 +811,8 @@ "CYCLE_INTRODUCED_VIOLATION", "FOLDER_BEING_MOVED_VIOLATION", "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" + "DELETED_FOLDER_HEIGHT_VIOLATION", + "FOLDER_TO_DELETE_CONFIGURED_CAPABILITY_VIOLATION" ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", @@ -823,7 +824,8 @@ "The attempted action would introduce cycle in resource path.", "The attempted action would move a folder that is already being moved.", "The folder the caller is trying to delete contains active resources.", - "The attempted action would violate the max deleted folder depth constraint." + "The attempted action would violate the max deleted folder depth constraint.", + "The folder being deleted has a configured capability." ], "type": "string" } diff --git a/discovery/cloudresourcemanager-v3.json b/discovery/cloudresourcemanager-v3.json index 849c77d5ba1..666d12a63ae 100644 --- a/discovery/cloudresourcemanager-v3.json +++ b/discovery/cloudresourcemanager-v3.json @@ -697,11 +697,11 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, - "update": { - "description": "Updates tag bindings directly attached to a GCP resource.", + "patch": { + "description": "Updates tag bindings directly attached to a GCP resource. Update_mask can be kept empty or \"*\".", "flatPath": "v3/locations/{locationsId}/tagBindingCollections/{tagBindingCollectionsId}", - "httpMethod": "PUT", - "id": "cloudresourcemanager.locations.tagBindingCollections.update", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.locations.tagBindingCollections.patch", "parameterOrder": [ "name" ], @@ -712,6 +712,12 @@ "pattern": "^locations/[^/]+/tagBindingCollections/[^/]+$", "required": true, "type": "string" + }, + "updateMask": { + "description": "Optional. An update mask to selectively update fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, "path": "v3/{+name}", @@ -1962,7 +1968,7 @@ } } }, - "revision": "20250606", + "revision": "20251103", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "AuditConfig": { @@ -2413,7 +2419,8 @@ "CYCLE_INTRODUCED_VIOLATION", "FOLDER_BEING_MOVED_VIOLATION", "FOLDER_TO_DELETE_NON_EMPTY_VIOLATION", - "DELETED_FOLDER_HEIGHT_VIOLATION" + "DELETED_FOLDER_HEIGHT_VIOLATION", + "FOLDER_TO_DELETE_CONFIGURED_CAPABILITY_VIOLATION" ], "enumDescriptions": [ "The error type was unrecognized or unspecified.", @@ -2425,7 +2432,8 @@ "The attempted action would introduce cycle in resource path.", "The attempted action would move a folder that is already being moved.", "The folder the caller is trying to delete contains active resources.", - "The attempted action would violate the max deleted folder depth constraint." + "The attempted action would violate the max deleted folder depth constraint.", + "The folder being deleted has a configured capability." ], "type": "string" } @@ -2621,7 +2629,7 @@ "id": "ListTagValuesResponse", "properties": { "nextPageToken": { - "description": "A pagination token returned from a previous call to `ListTagValues` that indicates from where listing should continue. This is currently not used, but the server may at any point start supplying a valid token.", + "description": "A pagination token returned from a previous call to `ListTagValues` that indicates from where listing should continue.", "type": "string" }, "tagValues": { @@ -3091,6 +3099,10 @@ "description": "A TagKey, used to group a set of TagValues.", "id": "TagKey", "properties": { + "allowedValuesRegex": { + "description": "Optional. Regular expression constraint for freeform tag values. If present, it implicitly allows freeform values (constrained by the regex).", + "type": "string" + }, "createTime": { "description": "Output only. Creation time.", "format": "google-datetime", diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index a4047a69a2b..0216aa42357 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -53529,7 +53529,7 @@ } } }, - "revision": "20251031", + "revision": "20251110", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -60208,6 +60208,7 @@ "ACCELERATOR_OPTIMIZED_A3_ULTRA", "ACCELERATOR_OPTIMIZED_A4", "ACCELERATOR_OPTIMIZED_A4X", + "ACCELERATOR_OPTIMIZED_A4X_MAX", "COMPUTE_OPTIMIZED", "COMPUTE_OPTIMIZED_C2D", "COMPUTE_OPTIMIZED_C3", @@ -60271,6 +60272,7 @@ "", "", "", + "", "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" diff --git a/discovery/datafusion-v1.json b/discovery/datafusion-v1.json index e6141ad08f4..73fc6a6e5d7 100644 --- a/discovery/datafusion-v1.json +++ b/discovery/datafusion-v1.json @@ -15,6 +15,198 @@ "description": "Cloud Data Fusion is a fully-managed, cloud native, enterprise data integration service for quickly building and managing data pipelines. It provides a graphical interface to increase time efficiency and reduce complexity, and allows business users, developers, and data scientists to easily and reliably build scalable data integration solutions to cleanse, prepare, blend, transfer and transform data without having to wrestle with infrastructure.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/data-fusion/docs", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-west2.rep.googleapis.com/", + "location": "us-west2" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -144,7 +336,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -681,6 +873,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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", @@ -743,7 +940,7 @@ } } }, - "revision": "20251006", + "revision": "20251106", "rootUrl": "https://datafusion.googleapis.com/", "schemas": { "Accelerator": { @@ -1303,6 +1500,13 @@ "$ref": "Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/datafusion-v1beta1.json b/discovery/datafusion-v1beta1.json index cc205a6892d..2225ee33c66 100644 --- a/discovery/datafusion-v1beta1.json +++ b/discovery/datafusion-v1beta1.json @@ -15,6 +15,198 @@ "description": "Cloud Data Fusion is a fully-managed, cloud native, enterprise data integration service for quickly building and managing data pipelines. It provides a graphical interface to increase time efficiency and reduce complexity, and allows business users, developers, and data scientists to easily and reliably build scalable data integration solutions to cleanse, prepare, blend, transfer and transform data without having to wrestle with infrastructure.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/data-fusion/docs", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datafusion.us-west2.rep.googleapis.com/", + "location": "us-west2" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -144,7 +336,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -879,6 +1071,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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", @@ -941,7 +1138,7 @@ } } }, - "revision": "20251006", + "revision": "20251106", "rootUrl": "https://datafusion.googleapis.com/", "schemas": { "Accelerator": { @@ -1534,6 +1731,13 @@ "$ref": "Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/dataplex-v1.json b/discovery/dataplex-v1.json index 52d88fd374d..7725a29770b 100644 --- a/discovery/dataplex-v1.json +++ b/discovery/dataplex-v1.json @@ -7229,7 +7229,7 @@ } } }, - "revision": "20251104", + "revision": "20251109", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -10005,12 +10005,14 @@ "enum": [ "TRIGGER_UNSPECIFIED", "ON_DEMAND", - "SCHEDULE" + "SCHEDULE", + "ONE_TIME" ], "enumDescriptions": [ "An unspecified trigger type.", "Data scan triggers on demand.", - "Data scan triggers as per schedule." + "Data scan triggers as per schedule.", + "Data scan is run one time on creation." ], "type": "string" }, diff --git a/discovery/discoveryengine-v1.json b/discovery/discoveryengine-v1.json index d5a57a50916..5a1b6d892ca 100644 --- a/discovery/discoveryengine-v1.json +++ b/discovery/discoveryengine-v1.json @@ -3499,6 +3499,83 @@ ] } } + }, + "widgetConfigs": { + "methods": { + "get": { + "description": "Gets a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.dataStores.widgetConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "acceptCache": { + "description": "Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development.", + "location": "query", + "type": "boolean" + }, + "getWidgetConfigRequestOption.turnOffCollectionComponents": { + "description": "Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. Full WidgetConfig resource name. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "patch": { + "description": "Update a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "PATCH", + "id": "discoveryengine.projects.locations.collections.dataStores.widgetConfigs.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The full resource name of the widget config. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } } } }, @@ -4727,6 +4804,83 @@ } } } + }, + "widgetConfigs": { + "methods": { + "get": { + "description": "Gets a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.widgetConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "acceptCache": { + "description": "Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development.", + "location": "query", + "type": "boolean" + }, + "getWidgetConfigRequestOption.turnOffCollectionComponents": { + "description": "Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. Full WidgetConfig resource name. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "patch": { + "description": "Update a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "PATCH", + "id": "discoveryengine.projects.locations.collections.engines.widgetConfigs.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The full resource name of the widget config. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } } } }, @@ -7252,6 +7406,83 @@ ] } } + }, + "widgetConfigs": { + "methods": { + "get": { + "description": "Gets a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.dataStores.widgetConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "acceptCache": { + "description": "Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development.", + "location": "query", + "type": "boolean" + }, + "getWidgetConfigRequestOption.turnOffCollectionComponents": { + "description": "Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. Full WidgetConfig resource name. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "patch": { + "description": "Update a WidgetConfig.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/widgetConfigs/{widgetConfigsId}", + "httpMethod": "PATCH", + "id": "discoveryengine.projects.locations.dataStores.widgetConfigs.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The full resource name of the widget config. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/widgetConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } } } }, @@ -8108,6 +8339,36 @@ } }, "resources": { + "licenseConfigsUsageStats": { + "methods": { + "list": { + "description": "Lists all the LicenseConfigUsageStatss associated with the project.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}/licenseConfigsUsageStats", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.userStores.licenseConfigsUsageStats.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/userStores/{user_store_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/licenseConfigsUsageStats", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1ListLicenseConfigsUsageStatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } + }, "userLicenses": { "methods": { "list": { @@ -8120,7 +8381,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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.", + "description": "Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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.", "location": "query", "type": "string" }, @@ -8267,7 +8528,7 @@ } } }, - "revision": "20251030", + "revision": "20251109", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GdataBlobstore2Info": { @@ -14107,6 +14368,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -14230,6 +14495,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -14304,6 +14574,23 @@ "$ref": "GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -15395,6 +15682,22 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1LicenseConfigUsageStats": { + "description": "Stats about users' licenses.", + "id": "GoogleCloudDiscoveryengineV1LicenseConfigUsageStats", + "properties": { + "licenseConfig": { + "description": "Required. The LicenseConfig name.", + "type": "string" + }, + "usedLicenseCount": { + "description": "Required. The number of licenses used.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1ListCmekConfigsResponse": { "description": "Response message for CmekConfigService.ListCmekConfigs method.", "id": "GoogleCloudDiscoveryengineV1ListCmekConfigsResponse", @@ -15549,6 +15852,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1ListLicenseConfigsUsageStatsResponse": { + "description": "Response message for UserLicenseService.ListLicenseConfigUsageStats method.", + "id": "GoogleCloudDiscoveryengineV1ListLicenseConfigsUsageStatsResponse", + "properties": { + "licenseConfigUsageStats": { + "description": "All the customer's LicenseConfigUsageStats.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1LicenseConfigUsageStats" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1ListSchemasResponse": { "description": "Response message for SchemaService.ListSchemas method.", "id": "GoogleCloudDiscoveryengineV1ListSchemasResponse", @@ -18750,29 +19067,757 @@ }, "type": "object" }, - "GoogleCloudDiscoveryengineV1WorkspaceConfig": { - "description": "Config to store data store type configuration for workspace data", - "id": "GoogleCloudDiscoveryengineV1WorkspaceConfig", + "GoogleCloudDiscoveryengineV1WidgetConfig": { + "description": "WidgetConfig captures configs at the Widget level.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfig", "properties": { - "dasherCustomerId": { - "description": "Obfuscated Dasher customer ID.", - "type": "string" + "accessSettings": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings", + "description": "Will be used for all widget access settings seen in cloud console integration page. Replaces top deprecated top level properties." }, - "superAdminEmailAddress": { - "description": "Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", - "type": "string" + "allowPublicAccess": { + "deprecated": true, + "description": "Whether allow no-auth integration with widget. If set true, public access to search or other solutions from widget is allowed without authenication token provided by customer hosted backend server.", + "type": "boolean" }, - "superAdminServiceAccount": { - "description": "Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", - "type": "string" + "allowlistedDomains": { + "deprecated": true, + "description": "Allowlisted domains that can load this widget.", + "items": { + "type": "string" + }, + "type": "array" }, - "type": { - "description": "The Google Workspace data source.", - "enum": [ - "TYPE_UNSPECIFIED", - "GOOGLE_DRIVE", - "GOOGLE_MAIL", - "GOOGLE_SITES", + "assistantSettings": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings", + "description": "Optional. Output only. Describes the assistant settings of the widget.", + "readOnly": true + }, + "collectionComponents": { + "description": "Output only. Collection components that lists all collections and child data stores associated with the widget config, those data sources can be used for filtering in widget service APIs, users can return results that from selected data sources.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent" + }, + "readOnly": true, + "type": "array" + }, + "configId": { + "description": "Output only. Unique obfuscated identifier of a WidgetConfig.", + "readOnly": true, + "type": "string" + }, + "contentSearchSpec": { + "$ref": "GoogleCloudDiscoveryengineV1SearchRequestContentSearchSpec", + "deprecated": true, + "description": "The content search spec that configs the desired behavior of content search." + }, + "createTime": { + "description": "Output only. Timestamp the WidgetConfig was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "customerProvidedConfig": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig", + "description": "Optional. Output only. Describes the customer related configurations, currently only used for government customers. This field cannot be modified after project onboarding.", + "readOnly": true + }, + "dataStoreType": { + "description": "Output only. The type of the parent data store.", + "enum": [ + "DATA_STORE_TYPE_UNSPECIFIED", + "SITE_SEARCH", + "STRUCTURED", + "UNSTRUCTURED", + "BLENDED" + ], + "enumDescriptions": [ + "Unspecified data store type.", + "The parent data store contains a site search engine.", + "The parent data store contains a search engine for structured data.", + "The parent data store contains a search engine for unstructured data.", + "The parent data store is served for blended search with multiple data stores." + ], + "readOnly": true, + "type": "string" + }, + "dataStoreUiConfigs": { + "deprecated": true, + "description": "Configurable UI configurations per data store.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig" + }, + "type": "array" + }, + "defaultSearchRequestOrderBy": { + "deprecated": true, + "description": "The default ordering for search results if specified. Used to set SearchRequest#order_by on applicable requests. https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.dataStores.servingConfigs/search#request-body", + "type": "string" + }, + "displayName": { + "description": "Required. The human readable widget config display name. Used in Discovery UI. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "type": "string" + }, + "enableAutocomplete": { + "deprecated": true, + "description": "Whether or not to enable autocomplete.", + "type": "boolean" + }, + "enableConversationalSearch": { + "deprecated": true, + "description": "Whether to allow conversational search (LLM, multi-turn) or not (non-LLM, single-turn).", + "type": "boolean" + }, + "enablePrivateKnowledgeGraph": { + "description": "Optional. Output only. Whether to enable private knowledge graph.", + "readOnly": true, + "type": "boolean" + }, + "enableQualityFeedback": { + "deprecated": true, + "description": "Turn on or off collecting the search result quality feedback from end users.", + "type": "boolean" + }, + "enableResultScore": { + "description": "Whether to show the result score.", + "type": "boolean" + }, + "enableSafeSearch": { + "deprecated": true, + "description": "Whether to enable safe search.", + "type": "boolean" + }, + "enableSearchAsYouType": { + "deprecated": true, + "description": "Whether to enable search-as-you-type behavior for the search widget", + "type": "boolean" + }, + "enableSnippetResultSummary": { + "deprecated": true, + "description": "Turn on or off summary for each snippets result.", + "type": "boolean" + }, + "enableSummarization": { + "deprecated": true, + "description": "Turn on or off summarization for the search response.", + "type": "boolean" + }, + "enableWebApp": { + "deprecated": true, + "description": "Whether to enable standalone web app.", + "type": "boolean" + }, + "facetField": { + "deprecated": true, + "description": "The configuration and appearance of facets in the end user view.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigFacetField" + }, + "type": "array" + }, + "fieldsUiComponentsMap": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField" + }, + "deprecated": true, + "description": "The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `url`, `custom1`, `custom2`, `custom3`. The value is the name of the field along with its device visibility. The 3 custom fields are optional and can be added or removed. `title`, `thumbnail`, `url` are required UI components that cannot be removed.", + "type": "object" + }, + "geminiBundle": { + "description": "Output only. Whether the subscription is gemini bundle or not.", + "readOnly": true, + "type": "boolean" + }, + "homepageSetting": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting", + "description": "Optional. Describes the homepage settings of the widget." + }, + "industryVertical": { + "description": "Output only. The industry vertical that the WidgetConfig registers. The WidgetConfig industry vertical is based on the associated Engine.", + "enum": [ + "INDUSTRY_VERTICAL_UNSPECIFIED", + "GENERIC", + "MEDIA", + "HEALTHCARE_FHIR" + ], + "enumDescriptions": [ + "Value used when unset.", + "The generic vertical for documents that are not specific to any industry vertical.", + "The media industry vertical.", + "The healthcare FHIR vertical." + ], + "readOnly": true, + "type": "string" + }, + "llmEnabled": { + "description": "Output only. Whether LLM is enabled in the corresponding data store.", + "readOnly": true, + "type": "boolean" + }, + "minimumDataTermAccepted": { + "description": "Output only. Whether the customer accepted data use terms.", + "readOnly": true, + "type": "boolean" + }, + "name": { + "description": "Immutable. The full resource name of the widget config. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/widgetConfigs/{widget_config_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.", + "type": "string" + }, + "resultDisplayType": { + "deprecated": true, + "description": "The type of snippet to display in UCS widget. - RESULT_DISPLAY_TYPE_UNSPECIFIED for existing users. - SNIPPET for new non-enterprise search users. - EXTRACTIVE_ANSWER for new enterprise search users.", + "enum": [ + "RESULT_DISPLAY_TYPE_UNSPECIFIED", + "SNIPPET", + "EXTRACTIVE_ANSWER" + ], + "enumDescriptions": [ + "Unspecified display type (default to showing snippet).", + "Display results from the snippet field.", + "Display results from extractive answers field." + ], + "type": "string" + }, + "solutionType": { + "description": "Required. Immutable. Specifies the solution type that this WidgetConfig can be used for.", + "enum": [ + "SOLUTION_TYPE_UNSPECIFIED", + "SOLUTION_TYPE_RECOMMENDATION", + "SOLUTION_TYPE_SEARCH", + "SOLUTION_TYPE_CHAT", + "SOLUTION_TYPE_GENERATIVE_CHAT" + ], + "enumDescriptions": [ + "Default value.", + "Used for Recommendations AI.", + "Used for Discovery Search.", + "Used for use cases related to the Generative AI agent.", + "Used for use cases related to the Generative Chat agent. It's used for Generative chat engine only, the associated data stores must enrolled with `SOLUTION_TYPE_CHAT` solution." + ], + "type": "string" + }, + "uiBranding": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings", + "description": "Describes search widget UI branding settings, such as the widget title, logo, favicons, and colors." + }, + "uiSettings": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigUiSettings", + "description": "Describes general widget search settings as seen in cloud console widget configuration page. Replaces top deprecated top level properties." + }, + "updateTime": { + "description": "Output only. Timestamp the WidgetConfig was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings": { + "description": "Describes widget access settings.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings", + "properties": { + "allowPublicAccess": { + "description": "Whether public unauthenticated access is allowed.", + "type": "boolean" + }, + "allowlistedDomains": { + "description": "List of domains that are allowed to integrate the search widget.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enableWebApp": { + "description": "Whether web app access is enabled.", + "type": "boolean" + }, + "languageCode": { + "description": "Optional. Language code for user interface. Use language tags defined by [BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). If unset, the default language code is \"en-US\".", + "type": "string" + }, + "workforceIdentityPoolProvider": { + "description": "Optional. The workforce identity pool provider used to access the widget.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings": { + "description": "Describes the assistant settings of the widget.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings", + "properties": { + "defaultWebGroundingToggleOff": { + "description": "Output only. This field controls the default web grounding toggle for end users if `web_grounding_type` is set to `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`. By default, this field is set to false. If `web_grounding_type` is `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`, end users will have web grounding enabled by default on UI. If true, grounding toggle will be disabled by default on UI. End users can still enable web grounding in the UI if web grounding is enabled.", + "readOnly": true, + "type": "boolean" + }, + "disableLocationContext": { + "description": "Optional. Output only. Whether to disable user location context.", + "readOnly": true, + "type": "boolean" + }, + "googleSearchGroundingEnabled": { + "deprecated": true, + "description": "Whether or not the Google search grounding toggle is shown. Deprecated. Use web_grounding_type instead.", + "type": "boolean" + }, + "webGroundingType": { + "description": "Optional. The type of web grounding to use.", + "enum": [ + "WEB_GROUNDING_TYPE_UNSPECIFIED", + "WEB_GROUNDING_TYPE_DISABLED", + "WEB_GROUNDING_TYPE_GOOGLE_SEARCH", + "WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH" + ], + "enumDescriptions": [ + "Default, unspecified setting. This is the same as disabled.", + "Web grounding is disabled.", + "Grounding with Google Search is enabled.", + "Grounding with Enterprise Web Search is enabled." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent": { + "description": "Read-only collection component that contains data store collections fields that may be used for filtering", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent", + "properties": { + "connectorIconLink": { + "description": "Output only. The icon link of the connector source.", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "description": "The name of the data source, retrieved from `Collection.data_connector.data_source`.", + "type": "string" + }, + "dataSourceDisplayName": { + "description": "Output only. The display name of the data source.", + "readOnly": true, + "type": "string" + }, + "dataStoreComponents": { + "description": "For the data store collection, list of the children data stores.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent" + }, + "type": "array" + }, + "displayName": { + "description": "The display name of the collection.", + "type": "string" + }, + "id": { + "description": "Output only. the identifier of the collection, used for widget service. For now it refers to collection_id, in the future we will migrate the field to encrypted collection name UUID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the collection. It should be collection resource name. Format: `projects/{project}/locations/{location}/collections/{collection_id}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig": { + "description": "Customer provided configurations.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig", + "properties": { + "customerType": { + "description": "Customer type.", + "enum": [ + "DEFAULT_CUSTOMER", + "GOVERNMENT_CUSTOMER" + ], + "enumDescriptions": [ + "Default customer type.", + "Government customer type. Some features are disabled for government customers due to legal requirements." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent": { + "description": "Read-only data store component that contains data stores fields that may be used for filtering, it's the child of `CollectionComponent`.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent", + "properties": { + "dataStoreConfigType": { + "description": "Output only. The type of the data store config.", + "enum": [ + "DATA_STORE_CONFIG_TYPE_UNSPECIFIED", + "ALLOW_DB_CONFIG", + "THIRD_PARTY_OAUTH_CONFIG", + "NOTEBOOKLM_CONFIG" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "The data store is connected to AlloyDB", + "The data store is a connected to a third party data source.", + "The data store is a connected to NotebookLM Enterprise." + ], + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name of the data store.", + "type": "string" + }, + "entityName": { + "description": "The name of the entity, retrieved from `Collection.data_connector.entities.entityName`.", + "type": "string" + }, + "id": { + "description": "Output only. the identifier of the data store, used for widget service. For now it refers to data_store_id, in the future we will migrate the field to encrypted data store name UUID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the data store. It should be data store resource name Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig": { + "description": "UI component configuration for data store.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig", + "properties": { + "facetField": { + "description": "Facet fields that store the mapping of fields to end user widget appearance.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigFacetField" + }, + "type": "array" + }, + "fieldsUiComponentsMap": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField" + }, + "description": "The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `url`, `custom1`, `custom2`, `custom3`. The value is the name of the field along with its device visibility. The 3 custom fields are optional and can be added or removed. `title`, `thumbnail`, `url` are required UI components that cannot be removed.", + "type": "object" + }, + "id": { + "description": "Output only. the identifier of the data store, used for widget service. For now it refers to data_store_id, in the future we will migrate the field to encrypted data store name UUID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the data store. It should be data store resource name Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigFacetField": { + "description": "Facet fields that store the mapping of fields to end user widget appearance.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigFacetField", + "properties": { + "displayName": { + "description": "Optional. The field name that end users will see.", + "type": "string" + }, + "field": { + "description": "Required. Registered field name. The format is `field.abc`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting": { + "description": "Describes the homepage setting of the widget. It includes all homepage related settings and configurations, such as shortcuts.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting", + "properties": { + "shortcuts": { + "description": "Optional. The shortcuts to display on the homepage.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut": { + "description": "Describes an entity of shortcut (aka pinned content) on the homepage. The home page will render these shortcuts in the same order as what the API returns. If a customer wants to reorder or remove a shortcut, the UI should always provide the new full list of shortcuts.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut", + "properties": { + "destinationUri": { + "description": "Optional. Destination URL of shortcut.", + "type": "string" + }, + "icon": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigImage", + "description": "Optional. Icon URL of shortcut." + }, + "title": { + "description": "Optional. Title of the shortcut.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigImage": { + "description": "Options to store an image.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigImage", + "properties": { + "url": { + "description": "Image URL.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField": { + "description": "Facet field that maps to a UI Component.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField", + "properties": { + "deviceVisibility": { + "description": "The field visibility on different types of devices.", + "items": { + "enum": [ + "DEVICE_VISIBILITY_UNSPECIFIED", + "MOBILE", + "DESKTOP" + ], + "enumDescriptions": [ + "Default value when not specified. Server returns INVALID_ARGUMENT if used in requests.", + "The UI component is visible on Mobile devices.", + "The UI component is visible on Browser-based client." + ], + "type": "string" + }, + "type": "array" + }, + "displayTemplate": { + "description": "The template to customize how the field is displayed. An example value would be a string that looks like: \"Price: {value}\".", + "type": "string" + }, + "field": { + "description": "Required. Registered field name. The format is `field.abc`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings": { + "description": "Describes widget UI branding settings.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings", + "properties": { + "logo": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigImage", + "description": "Logo image." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigUiSettings": { + "description": "Describes general widget (or web app) UI settings as seen in the cloud console UI configuration page.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigUiSettings", + "properties": { + "dataStoreUiConfigs": { + "description": "Per data store configuration.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig" + }, + "type": "array" + }, + "defaultSearchRequestOrderBy": { + "description": "The default ordering for search results if specified. Used to set SearchRequest#order_by on applicable requests. https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.dataStores.servingConfigs/search#request-body", + "type": "string" + }, + "disableUserEventsCollection": { + "description": "If set to true, the widget will not collect user events.", + "type": "boolean" + }, + "enableAutocomplete": { + "description": "Whether or not to enable autocomplete.", + "type": "boolean" + }, + "enableCreateAgentButton": { + "description": "Optional. If set to true, the widget will enable the create agent button.", + "type": "boolean" + }, + "enablePeopleSearch": { + "description": "Optional. If set to true, the widget will enable people search.", + "type": "boolean" + }, + "enableQualityFeedback": { + "description": "Turn on or off collecting the search result quality feedback from end users.", + "type": "boolean" + }, + "enableSafeSearch": { + "description": "Whether to enable safe search.", + "type": "boolean" + }, + "enableSearchAsYouType": { + "description": "Whether to enable search-as-you-type behavior for the search widget.", + "type": "boolean" + }, + "enableVisualContentSummary": { + "description": "If set to true, the widget will enable visual content summary on applicable search requests. Only used by healthcare search.", + "type": "boolean" + }, + "features": { + "additionalProperties": { + "enum": [ + "FEATURE_STATE_UNSPECIFIED", + "FEATURE_STATE_ON", + "FEATURE_STATE_OFF" + ], + "enumDescriptions": [ + "The feature state is unspecified.", + "The feature is turned on to be accessible.", + "The feature is turned off to be inaccessible." + ], + "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` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload`", + "readOnly": true, + "type": "object" + }, + "generativeAnswerConfig": { + "$ref": "GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig", + "description": "Describes generative answer configuration." + }, + "interactionType": { + "description": "Describes widget (or web app) interaction type", + "enum": [ + "INTERACTION_TYPE_UNSPECIFIED", + "SEARCH_ONLY", + "SEARCH_WITH_ANSWER", + "SEARCH_WITH_FOLLOW_UPS" + ], + "enumDescriptions": [ + "Not specified. Defaults to SEARCH_ONLY.", + "Search without a generative answer.", + "Search with the generative answer.", + "Search with the generative answer that supports follow up questions. Also known as multi-turn search." + ], + "type": "string" + }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Output only. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "readOnly": true, + "type": "object" + }, + "resultDescriptionType": { + "description": "Controls whether result extract is display and how (snippet or extractive answer). Default to no result if unspecified.", + "enum": [ + "RESULT_DISPLAY_TYPE_UNSPECIFIED", + "SNIPPET", + "EXTRACTIVE_ANSWER" + ], + "enumDescriptions": [ + "Unspecified display type (default to showing snippet).", + "Display results from the snippet field.", + "Display results from extractive answers field." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig": { + "description": "Describes configuration for generative answer.", + "id": "GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig", + "properties": { + "disableRelatedQuestions": { + "description": "Whether generated answer contains suggested related questions.", + "type": "boolean" + }, + "ignoreAdversarialQuery": { + "description": "Optional. Specifies whether to filter out queries that are adversarial.", + "type": "boolean" + }, + "ignoreLowRelevantContent": { + "description": "Optional. Specifies whether to filter out queries that are not relevant to the content.", + "type": "boolean" + }, + "ignoreNonAnswerSeekingQuery": { + "description": "Optional. Specifies whether to filter out queries that are not answer-seeking. The default value is `false`. No answer is returned if the search query is classified as a non-answer seeking query. If this field is set to `true`, we skip generating answers for non-answer seeking queries and return fallback messages instead.", + "type": "boolean" + }, + "imageSource": { + "description": "Optional. Source of image returned in the answer.", + "enum": [ + "IMAGE_SOURCE_UNSPECIFIED", + "ALL_AVAILABLE_SOURCES", + "CORPUS_IMAGE_ONLY", + "FIGURE_GENERATION_ONLY" + ], + "enumDescriptions": [ + "Unspecified image source (multimodal feature is disabled by default)", + "Behavior when service determines the pick from all available sources.", + "Include image from corpus in the answer.", + "Triggers figure generation in the answer." + ], + "type": "string" + }, + "languageCode": { + "description": "Language code for Summary. Use language tags defined by [BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). Note: This is an experimental feature.", + "type": "string" + }, + "maxRephraseSteps": { + "description": "Max rephrase steps. The max number is 5 steps. If not set or set to < 1, it will be set to 1 by default.", + "format": "int32", + "type": "integer" + }, + "modelPromptPreamble": { + "description": "Text at the beginning of the prompt that instructs the model that generates the answer.", + "type": "string" + }, + "modelVersion": { + "description": "The model version used to generate the answer.", + "type": "string" + }, + "resultCount": { + "description": "The number of top results to generate the answer from. Up to 10.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1WorkspaceConfig": { + "description": "Config to store data store type configuration for workspace data", + "id": "GoogleCloudDiscoveryengineV1WorkspaceConfig", + "properties": { + "dasherCustomerId": { + "description": "Obfuscated Dasher customer ID.", + "type": "string" + }, + "superAdminEmailAddress": { + "description": "Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", + "type": "string" + }, + "superAdminServiceAccount": { + "description": "Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", + "type": "string" + }, + "type": { + "description": "The Google Workspace data source.", + "enum": [ + "TYPE_UNSPECIFIED", + "GOOGLE_DRIVE", + "GOOGLE_MAIL", + "GOOGLE_SITES", "GOOGLE_CALENDAR", "GOOGLE_CHAT", "GOOGLE_GROUPS", @@ -21925,6 +22970,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -22027,6 +23076,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -22101,6 +23155,23 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -26573,6 +27644,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -26675,6 +27750,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -26749,6 +27829,23 @@ "$ref": "GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" diff --git a/discovery/discoveryengine-v1alpha.json b/discovery/discoveryengine-v1alpha.json index 573ca1adf6e..18449a78720 100644 --- a/discovery/discoveryengine-v1alpha.json +++ b/discovery/discoveryengine-v1alpha.json @@ -5136,6 +5136,82 @@ "https://www.googleapis.com/auth/discoveryengine.readwrite" ] }, + "listAvailableAgentViews": { + "description": "Lists the data for displaying the Agents under an Assistant which are available to the caller.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}:listAvailableAgentViews", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.listAvailableAgentViews", + "parameterOrder": [ + "parent" + ], + "parameters": { + "agentOrigin": { + "description": "Optional. The origin of the Agent.", + "enum": [ + "AGENT_ORIGIN_UNSPECIFIED", + "GOOGLE", + "ORGANIZATION", + "USER" + ], + "enumDescriptions": [ + "The origin is unspecified.", + "Agent defined by Google.", + "Agent defined by the organization.", + "Agent defined by the user." + ], + "location": "query", + "type": "string" + }, + "filter": { + "description": "Optional. The filter syntax consists of an expression language for constructing a predicate from one or more fields of the files being filtered. Filter expression is case-sensitive. Allowed fields are: * `display_name` * `state` Some examples of filters would be: * `display_name = 'agent_1'` * `display_name = 'agent_1' AND state = ENABLED` For a full description of the filter format, please see https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentViews in the response should be translated to this language.", + "location": "query", + "type": "string" + }, + "maxSuggestedPrompts": { + "description": "Optional. The maximum number of suggested prompts to return per agent.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageSize": { + "description": "Optional. Maximum number of AgentViewss to return. If unspecified, defaults to 100. The maximum allowed value is 1000; anything above that will be coerced down to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token ListAvailableAgentViewsResponse.next_page_token, received from a previous AgentService.ListAvailableAgentViews call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAvailableAgentViews must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource name. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+$", + "required": true, + "type": "string" + }, + "sortBy": { + "description": "Optional. The field to sort by. Can have the following values: - display-name: The display name of the agent. - description: The description of the agent. - create-time: The creation time of the agent. - state: The state of the agent.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}:listAvailableAgentViews", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaListAvailableAgentViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, "patch": { "description": "Updates an Assistant", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}", @@ -5263,6 +5339,60 @@ "https://www.googleapis.com/auth/discoveryengine.readwrite" ] }, + "disableAgent": { + "description": "Disables an Agent. The `state` of the Agent becomes `DISABLED`. Can be called on an Agent in the state `ENABLED` or`SUSPENDED`, otherwise it returns an error.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:disableAgent", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.disableAgent", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Agent to disable. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:disableAgent", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "enableAgent": { + "description": "Enables an Agent. The `state` of the Agent becomes `ENABLED`. Can be called on an Agent in the state `DISABLED` or 'SUSPENDED', otherwise it returns an error.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:enableAgent", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.enableAgent", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Agent to enable. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:enableAgent", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, "get": { "description": "Gets an Agent.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}", @@ -5290,6 +5420,77 @@ "https://www.googleapis.com/auth/discoveryengine.readwrite" ] }, + "getAgentView": { + "description": "Returns a AgentView for a given Agent, which contains additional information about the Agent.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:getAgentView", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.getAgentView", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentView in the response should be translated to this language.", + "location": "query", + "type": "string" + }, + "maxSuggestedPrompts": { + "description": "Optional. The maximum number of suggested prompts to return per agent.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Required. The name of the Agent to get. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:getAgentView", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaGetAgentViewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for an agent 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.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:getIamPolicy", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, "list": { "description": "Lists all Agents under an Assistant which were created by the caller.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents", @@ -5368,6 +5569,68 @@ "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", "https://www.googleapis.com/auth/discoveryengine.readwrite" ] + }, + "setIamPolicy": { + "description": "Sets the access control policy for an agent resource. A `NOT_FOUND` error is returned if the resource does not exist. Policy can only contain `roles/discoveryengine.agentUser`, `roles/discoveryengine.agentViewer` and `roles/discoveryengine.agentEditor` roles.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:setIamPolicy", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + }, + "suspendAgent": { + "description": "Suspends an Agent. It is still available for viewing but not for use. The `state` of the Agent becomes `SUSPENDED`. Can be called on an Agent in the state `ENABLED`, otherwise it returns an error.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}:suspendAgent", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.suspendAgent", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Agent to suspend. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + }, + "suspensionReason": { + "description": "Required. The reason for suspending the Agent. This will be shown to the users of the Agent.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}:suspendAgent", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgent" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] } }, "resources": { @@ -11327,6 +11590,36 @@ } }, "resources": { + "licenseConfigsUsageStats": { + "methods": { + "list": { + "description": "Lists all the LicenseConfigUsageStatss associated with the project.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}/licenseConfigsUsageStats", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.userStores.licenseConfigsUsageStats.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/userStores/{user_store_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/licenseConfigsUsageStats", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaListLicenseConfigsUsageStatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } + }, "operations": { "methods": { "get": { @@ -11416,7 +11709,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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.", + "description": "Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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.", "location": "query", "type": "string" }, @@ -11534,7 +11827,7 @@ } } }, - "revision": "20251030", + "revision": "20251109", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "ApiservingMediaRequestInfo": { @@ -14447,6 +14740,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -14549,6 +14846,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -14623,6 +14925,23 @@ "$ref": "GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -16846,6 +17165,10 @@ "readOnly": true, "type": "string" }, + "sharingConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentSharingConfig", + "description": "Optional. The sharing config of the agent." + }, "starterPrompts": { "description": "Optional. The starter prompt suggestions to show the user on the landing page of the agent.", "items": { @@ -16926,6 +17249,27 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAgentSharingConfig": { + "description": "Sharing related configuration.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentSharingConfig", + "properties": { + "scope": { + "description": "Optional. The sharing scope of the agent.", + "enum": [ + "SCOPE_UNSPECIFIED", + "RESTRICTED", + "ALL_USERS" + ], + "enumDescriptions": [ + "Default value. Behaves as `RESTRICTED`.", + "The agent is shared based on the IAM policy.", + "The agent is shared with all users." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAgentStarterPrompt": { "description": "The starter prompt suggestion to show the user on the landing page of the agent.", "id": "GoogleCloudDiscoveryengineV1alphaAgentStarterPrompt", @@ -16937,6 +17281,191 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAgentView": { + "description": "The data for displaying an Agent.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentView", + "properties": { + "agentOrigin": { + "description": "Immutable. The origin of the Agent.", + "enum": [ + "AGENT_ORIGIN_UNSPECIFIED", + "GOOGLE", + "ORGANIZATION", + "USER" + ], + "enumDescriptions": [ + "The origin is unspecified.", + "Agent defined by Google.", + "Agent defined by the organization.", + "Agent defined by the user." + ], + "type": "string" + }, + "agentSharingState": { + "description": "Output only. The sharing state of the agent.", + "enum": [ + "AGENT_SHARING_STATE_UNSPECIFIED", + "NOT_SHARED", + "PENDING", + "SHARED", + "REJECTED" + ], + "enumDescriptions": [ + "The sharing state is unspecified.", + "The agent is not shared.", + "The agent is pending review.", + "The agent is shared with other users.", + "The agent sharing request was rejected." + ], + "readOnly": true, + "type": "string" + }, + "agentType": { + "description": "Output only. The type of the agent.", + "enum": [ + "AGENT_TYPE_UNSPECIFIED", + "NO_CODE", + "HTTP", + "ADK", + "MANAGED", + "A2A", + "DIALOGFLOW", + "LOW_CODE" + ], + "enumDescriptions": [ + "The agent type is unspecified.", + "No-code agent.", + "HTTP agent.", + "ADK agent.", + "Google managed agent.", + "A2A agent.", + "Dialogflow agent.", + "Low-code agent." + ], + "readOnly": true, + "type": "string" + }, + "customPlaceholderText": { + "description": "The custom placeholder text that appears in the text box before the user enters any text.", + "type": "string" + }, + "deploymentFailureReason": { + "description": "The reason why the agent deployment failed. Only set if the state is DEPLOYMENT_FAILED.", + "type": "string" + }, + "description": { + "description": "Required. Human-readable description of the agent. This might be used by an LLM to automatically select an agent to respond to a user query and to generate the first version of the steps for the agent that can be modified by the user. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled.", + "type": "string" + }, + "displayName": { + "description": "Required. Display name of the agent. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled.", + "type": "string" + }, + "icon": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentImage", + "description": "Optional. The icon that represents the agent on the UI." + }, + "name": { + "description": "Resource name of the agent. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", + "type": "string" + }, + "rejectionReason": { + "description": "The reason why the agent was rejected. Only set if the state is PRIVATE, and got there via rejection.", + "type": "string" + }, + "state": { + "description": "Output only. The state of the Agent.", + "enum": [ + "STATE_UNSPECIFIED", + "CONFIGURED", + "DEPLOYING", + "DISABLED", + "DEPLOYMENT_FAILED", + "PRIVATE", + "ENABLED", + "SUSPENDED" + ], + "enumDescriptions": [ + "The state is unspecified.", + "The agent is configured, but no deployment triggered yet.", + "The agent is being deployed.", + "The agent is available for admins only.", + "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." + ], + "readOnly": true, + "type": "string" + }, + "suggestedPrompts": { + "description": "Optional. The suggested prompts for the agent, to be shown on the agent landing page.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt" + }, + "type": "array" + }, + "suspensionReason": { + "description": "The reason why the agent was suspended. Only set if the state is SUSPENDED.", + "type": "string" + }, + "userAnnotations": { + "$ref": "GoogleCloudDiscoveryengineV1alphaUserAnnotations", + "description": "Optional. Per-user annotations of the current caller for the agent." + }, + "userPermissions": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions", + "description": "The permissions of the user for this Agent." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt": { + "description": "A suggested prompt for the agent, to be shown on the agent landing page.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt", + "properties": { + "text": { + "description": "Required. The text of the suggested prompt. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions": { + "description": "The permissions of the user on an Agent.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions", + "properties": { + "canDelete": { + "description": "If the user can delete this Agent.", + "type": "boolean" + }, + "canEdit": { + "description": "If the user can edit this Agent.", + "type": "boolean" + }, + "canProposeUsers": { + "description": "If the user can propose other users to share the Agent with.", + "type": "boolean" + }, + "canRequestReview": { + "description": "If the user can request a review for this Agent.", + "type": "boolean" + }, + "canRun": { + "description": "If the user can run this Agent.", + "type": "boolean" + }, + "canView": { + "description": "If the user can view the source of this Agent.", + "type": "boolean" + }, + "canWithdraw": { + "description": "If the user can withdraw this Agent.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig", @@ -22628,6 +23157,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -22762,6 +23295,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -22836,6 +23374,23 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -23823,6 +24378,17 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaGetAgentViewResponse": { + "description": "Response message for the AgentService.GetAgentView method.", + "id": "GoogleCloudDiscoveryengineV1alphaGetAgentViewResponse", + "properties": { + "agentView": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentView", + "description": "The data for displaying an Agent." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaGetConnectorSecretResponse": { "description": "Response message for DataConnectorService.GetConnectorSecret.", "id": "GoogleCloudDiscoveryengineV1alphaGetConnectorSecretResponse", @@ -24812,6 +25378,22 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats": { + "description": "Stats about users' licenses.", + "id": "GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats", + "properties": { + "licenseConfig": { + "description": "Required. The LicenseConfig name.", + "type": "string" + }, + "usedLicenseCount": { + "description": "Required. The number of licenses used.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaListAgentsResponse": { "description": "Response message for the AgentService.ListAgents method.", "id": "GoogleCloudDiscoveryengineV1alphaListAgentsResponse", @@ -24848,6 +25430,24 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaListAvailableAgentViewsResponse": { + "description": "Response message for the AgentService.ListAvailableAgentViews method.", + "id": "GoogleCloudDiscoveryengineV1alphaListAvailableAgentViewsResponse", + "properties": { + "agentViews": { + "description": "The agent sources visible to the caller under the parent Assistant.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentView" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token that can be sent as ListAvailableAgentViewsRequest.page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaListBillingAccountLicenseConfigsResponse": { "description": "Response message for LicenseConfigService.ListBillingAccountLicenseConfigs method.", "id": "GoogleCloudDiscoveryengineV1alphaListBillingAccountLicenseConfigsResponse", @@ -25177,6 +25777,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaListLicenseConfigsUsageStatsResponse": { + "description": "Response message for UserLicenseService.ListLicenseConfigUsageStats method.", + "id": "GoogleCloudDiscoveryengineV1alphaListLicenseConfigsUsageStatsResponse", + "properties": { + "licenseConfigUsageStats": { + "description": "All the customer's LicenseConfigUsageStats.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaListSampleQueriesResponse": { "description": "Response message for SampleQueryService.ListSampleQueries method.", "id": "GoogleCloudDiscoveryengineV1alphaListSampleQueriesResponse", @@ -29805,6 +30419,21 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaUserAnnotations": { + "description": "Per-user annotations for an Agent, based on UserAnnotation.", + "id": "GoogleCloudDiscoveryengineV1alphaUserAnnotations", + "properties": { + "pinned": { + "description": "Optional. Whether the agent is pinned, pinned agent will be displayed on the top of the agent list.", + "type": "boolean" + }, + "viewed": { + "description": "Optional. Whether the agent has been viewed by the user.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaUserEvent": { "description": "UserEvent captures all metadata information Discovery Engine API needs to know about how end users interact with your website.", "id": "GoogleCloudDiscoveryengineV1alphaUserEvent", @@ -30757,6 +31386,24 @@ ], "type": "string" }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Output only. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "readOnly": true, + "type": "object" + }, "resultDescriptionType": { "description": "Controls whether result extract is display and how (snippet or extractive answer). Default to no result if unspecified.", "enum": [ @@ -31941,6 +32588,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -32043,6 +32694,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -32117,6 +32773,23 @@ "$ref": "GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -35502,6 +36175,63 @@ }, "type": "object" }, + "GoogleIamV1Binding": { + "description": "Associates `members`, or principals, with a `role`.", + "id": "GoogleIamV1Binding", + "properties": { + "condition": { + "$ref": "GoogleTypeExpr", + "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + }, + "members": { + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `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. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1Policy": { + "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": "GoogleIamV1Policy", + "properties": { + "bindings": { + "description": "Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`.", + "items": { + "$ref": "GoogleIamV1Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. 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", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleIamV1SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "GoogleIamV1SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "GoogleIamV1Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them." + } + }, + "type": "object" + }, "GoogleLongrunningCancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", "id": "GoogleLongrunningCancelOperationRequest", diff --git a/discovery/discoveryengine-v1beta.json b/discovery/discoveryengine-v1beta.json index dd46de787e9..b25cf35ed30 100644 --- a/discovery/discoveryengine-v1beta.json +++ b/discovery/discoveryengine-v1beta.json @@ -8672,6 +8672,36 @@ } }, "resources": { + "licenseConfigsUsageStats": { + "methods": { + "list": { + "description": "Lists all the LicenseConfigUsageStatss associated with the project.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}/licenseConfigsUsageStats", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.userStores.licenseConfigsUsageStats.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/userStores/{user_store_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/licenseConfigsUsageStats", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1betaListLicenseConfigsUsageStatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite" + ] + } + } + }, "userLicenses": { "methods": { "list": { @@ -8684,7 +8714,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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.", + "description": "Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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.", "location": "query", "type": "string" }, @@ -8802,7 +8832,7 @@ } } }, - "revision": "20251030", + "revision": "20251109", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GdataBlobstore2Info": { @@ -11548,6 +11578,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -11650,6 +11684,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -11724,6 +11763,23 @@ "$ref": "GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -16589,6 +16645,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -16691,6 +16751,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -16765,6 +16830,23 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -24666,6 +24748,10 @@ "description": "Optional. If true, the LLM based annotation is added to the image during parsing.", "type": "boolean" }, + "enableLlmLayoutParsing": { + "description": "Optional. If true, the pdf layout will be refined using an LLM.", + "type": "boolean" + }, "enableTableAnnotation": { "description": "Optional. If true, the LLM based annotation is added to the table during parsing.", "type": "boolean" @@ -24800,6 +24886,11 @@ "description": "Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.", "readOnly": true }, + "cmekConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaCmekConfig", + "description": "Output only. CMEK-related information for the Engine.", + "readOnly": true + }, "commonConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineCommonConfig", "description": "Common config spec that specifies the metadata of the engine." @@ -24874,6 +24965,23 @@ "$ref": "GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig", "description": "Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical." }, + "modelConfigs": { + "additionalProperties": { + "enum": [ + "MODEL_STATE_UNSPECIFIED", + "MODEL_ENABLED", + "MODEL_DISABLED" + ], + "enumDescriptions": [ + "The model state is unspecified.", + "The model is enabled by admin.", + "The model is disabled by admin." + ], + "type": "string" + }, + "description": "Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.", + "type": "object" + }, "name": { "description": "Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}` engine should be 1-63 characters, and valid characters are /a-z0-9*/. Otherwise, an INVALID_ARGUMENT error is returned.", "type": "string" @@ -26152,6 +26260,22 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaLicenseConfigUsageStats": { + "description": "Stats about users' licenses.", + "id": "GoogleCloudDiscoveryengineV1betaLicenseConfigUsageStats", + "properties": { + "licenseConfig": { + "description": "Required. The LicenseConfig name.", + "type": "string" + }, + "usedLicenseCount": { + "description": "Required. The number of licenses used.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaListCmekConfigsResponse": { "description": "Response message for CmekConfigService.ListCmekConfigs method.", "id": "GoogleCloudDiscoveryengineV1betaListCmekConfigsResponse", @@ -26359,6 +26483,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaListLicenseConfigsUsageStatsResponse": { + "description": "Response message for UserLicenseService.ListLicenseConfigUsageStats method.", + "id": "GoogleCloudDiscoveryengineV1betaListLicenseConfigsUsageStatsResponse", + "properties": { + "licenseConfigUsageStats": { + "description": "All the customer's LicenseConfigUsageStats.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1betaLicenseConfigUsageStats" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaListSampleQueriesResponse": { "description": "Response message for SampleQueryService.ListSampleQueries method.", "id": "GoogleCloudDiscoveryengineV1betaListSampleQueriesResponse", diff --git a/discovery/documentai-v1.json b/discovery/documentai-v1.json index 1c1ca627b42..3c169f07a34 100644 --- a/discovery/documentai-v1.json +++ b/discovery/documentai-v1.json @@ -661,8 +661,10 @@ }, "resources": { "humanReviewConfig": { + "deprecated": true, "methods": { "reviewDocument": { + "deprecated": true, "description": "Send a document for Human Review. The input document should be processed by the specified processor.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/humanReviewConfig:reviewDocument", "httpMethod": "POST", @@ -1392,7 +1394,7 @@ } } }, - "revision": "20251030", + "revision": "20251108", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { diff --git a/discovery/documentai-v1beta3.json b/discovery/documentai-v1beta3.json index 9f709b2b49c..154a25c185c 100644 --- a/discovery/documentai-v1beta3.json +++ b/discovery/documentai-v1beta3.json @@ -904,8 +904,10 @@ } }, "humanReviewConfig": { + "deprecated": true, "methods": { "reviewDocument": { + "deprecated": true, "description": "Send a document for Human Review. The input document should be processed by the specified processor.", "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/humanReviewConfig:reviewDocument", "httpMethod": "POST", @@ -1634,7 +1636,7 @@ } } }, - "revision": "20251030", + "revision": "20251108", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { diff --git a/discovery/gkebackup-v1.json b/discovery/gkebackup-v1.json index da9176a1188..c9f9a1dcb69 100644 --- a/discovery/gkebackup-v1.json +++ b/discovery/gkebackup-v1.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "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" @@ -2232,7 +2232,7 @@ } } }, - "revision": "20251001", + "revision": "20251027", "rootUrl": "https://gkebackup.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/licensing-v1.json b/discovery/licensing-v1.json index 5805ab76fd1..20abca1b629 100644 --- a/discovery/licensing-v1.json +++ b/discovery/licensing-v1.json @@ -3,7 +3,7 @@ "oauth2": { "scopes": { "https://www.googleapis.com/auth/apps.licensing": { - "description": "View and manage G Suite licenses for your domain" + "description": "View and manage Google Workspace licenses for your domain" } } } @@ -400,7 +400,7 @@ } } }, - "revision": "20250419", + "revision": "20251108", "rootUrl": "https://licensing.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/merchantapi-inventories_v1.json b/discovery/merchantapi-inventories_v1.json index 7287cd72b53..22480697861 100644 --- a/discovery/merchantapi-inventories_v1.json +++ b/discovery/merchantapi-inventories_v1.json @@ -126,6 +126,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+/localInventories/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+name}", @@ -151,6 +156,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+parent}/localInventories:insert", @@ -190,6 +200,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+parent}/localInventories", @@ -219,6 +234,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+/regionalInventories/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+name}", @@ -244,6 +264,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+parent}/regionalInventories:insert", @@ -283,6 +308,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1/{+parent}/regionalInventories", @@ -300,7 +330,7 @@ } } }, - "revision": "20250804", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/merchantapi-inventories_v1beta.json b/discovery/merchantapi-inventories_v1beta.json index bc069fd4eaa..e67a9d32af3 100644 --- a/discovery/merchantapi-inventories_v1beta.json +++ b/discovery/merchantapi-inventories_v1beta.json @@ -126,6 +126,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+/localInventories/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+name}", @@ -151,6 +156,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+parent}/localInventories:insert", @@ -190,6 +200,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+parent}/localInventories", @@ -219,6 +234,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+/regionalInventories/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+name}", @@ -244,6 +264,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+parent}/regionalInventories:insert", @@ -283,6 +308,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "inventories/v1beta/{+parent}/regionalInventories", @@ -300,7 +330,7 @@ } } }, - "revision": "20250727", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CustomAttribute": { diff --git a/discovery/merchantapi-issueresolution_v1.json b/discovery/merchantapi-issueresolution_v1.json index 2f9b69e4661..8775593b2d3 100644 --- a/discovery/merchantapi-issueresolution_v1.json +++ b/discovery/merchantapi-issueresolution_v1.json @@ -215,6 +215,11 @@ "required": true, "type": "string" }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" + }, "timeZone": { "description": "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.", "location": "query", @@ -268,7 +273,7 @@ } } }, - "revision": "20250830", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { diff --git a/discovery/merchantapi-issueresolution_v1beta.json b/discovery/merchantapi-issueresolution_v1beta.json index 0ed2bafba84..10f29df07fd 100644 --- a/discovery/merchantapi-issueresolution_v1beta.json +++ b/discovery/merchantapi-issueresolution_v1beta.json @@ -215,6 +215,11 @@ "required": true, "type": "string" }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" + }, "timeZone": { "description": "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.", "location": "query", @@ -268,7 +273,7 @@ } } }, - "revision": "20250830", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { diff --git a/discovery/merchantapi-products_v1.json b/discovery/merchantapi-products_v1.json index 9e9d85976b3..72ab4b38409 100644 --- a/discovery/merchantapi-products_v1.json +++ b/discovery/merchantapi-products_v1.json @@ -129,6 +129,11 @@ "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{productInput}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "products/v1/{+name}", @@ -193,6 +198,11 @@ "required": true, "type": "string" }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{productInput}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" + }, "updateMask": { "description": "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.", "format": "google-fieldmask", @@ -230,6 +240,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "products/v1/{+name}", @@ -281,7 +296,7 @@ } } }, - "revision": "20251104", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AutomatedDiscounts": { diff --git a/discovery/merchantapi-products_v1beta.json b/discovery/merchantapi-products_v1beta.json index d562e2d91fb..f3cf894b4cf 100644 --- a/discovery/merchantapi-products_v1beta.json +++ b/discovery/merchantapi-products_v1beta.json @@ -129,6 +129,11 @@ "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{productInput}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "products/v1beta/{+name}", @@ -193,6 +198,11 @@ "required": true, "type": "string" }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{productInput}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" + }, "updateMask": { "description": "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.", "format": "google-fieldmask", @@ -230,6 +240,11 @@ "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, "type": "string" + }, + "productIdBase64UrlEncoded": { + "description": "Optional. If true, the `{product}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids.", + "location": "query", + "type": "boolean" } }, "path": "products/v1beta/{+name}", @@ -281,7 +296,7 @@ } } }, - "revision": "20251007", + "revision": "20251109", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { diff --git a/discovery/migrationcenter-v1.json b/discovery/migrationcenter-v1.json index ecf1960de29..532d1fe061c 100644 --- a/discovery/migrationcenter-v1.json +++ b/discovery/migrationcenter-v1.json @@ -1951,6 +1951,34 @@ "resources": { "reports": { "methods": { + "artifactLink": { + "description": "Gets the link to the generated artifact of a given type for a Report.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}:artifactLink", + "httpMethod": "POST", + "id": "migrationcenter.projects.locations.reportConfigs.reports.artifactLink", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:artifactLink", + "request": { + "$ref": "GenerateReportArtifactLinkRequest" + }, + "response": { + "$ref": "ReportArtifactLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a report.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports", @@ -2412,7 +2440,7 @@ } } }, - "revision": "20251023", + "revision": "20251106", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { @@ -4003,6 +4031,29 @@ }, "type": "object" }, + "GenerateReportArtifactLinkRequest": { + "description": "A request to generate a link to an artifact for a Report.", + "id": "GenerateReportArtifactLinkRequest", + "properties": { + "artifactType": { + "description": "Required. Type of the artifact requested.", + "enum": [ + "ARTIFACT_TYPE_UNSPECIFIED", + "PRESENTATION", + "SPREADSHEET", + "CSV" + ], + "enumDescriptions": [ + "Unspecified (default value).", + "Google Slides presentation.", + "Google Sheets document.", + "Comma Separated Value Text File." + ], + "type": "string" + } + }, + "type": "object" + }, "GenericInsight": { "description": "A generic insight about an asset.", "id": "GenericInsight", @@ -6037,6 +6088,24 @@ }, "type": "object" }, + "ReportArtifactLink": { + "description": "Describes a link to a generated artifact of the report.", + "id": "ReportArtifactLink", + "properties": { + "uri": { + "description": "Output only. URI of the artifact.", + "readOnly": true, + "type": "string" + }, + "uriExpirationTime": { + "description": "Output only. Expiration time of the URI.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ReportAssetFramesResponse": { "description": "A response to a call to `ReportAssetFrame`.", "id": "ReportAssetFramesResponse", diff --git a/discovery/migrationcenter-v1alpha1.json b/discovery/migrationcenter-v1alpha1.json index 9b68873e60a..94b8f33658d 100644 --- a/discovery/migrationcenter-v1alpha1.json +++ b/discovery/migrationcenter-v1alpha1.json @@ -2098,6 +2098,34 @@ "resources": { "reports": { "methods": { + "artifactLink": { + "description": "Gets the link to the generated artifact of a given type for a Report.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}:artifactLink", + "httpMethod": "POST", + "id": "migrationcenter.projects.locations.reportConfigs.reports.artifactLink", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:artifactLink", + "request": { + "$ref": "GenerateReportArtifactLinkRequest" + }, + "response": { + "$ref": "ReportArtifactLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a report.", "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports", @@ -2166,6 +2194,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "export": { + "description": "Export a Report into a supported format.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}:export", + "httpMethod": "POST", + "id": "migrationcenter.projects.locations.reportConfigs.reports.export", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:export", + "request": { + "$ref": "ExportReportRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets details of a single Report.", "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}", @@ -2271,6 +2327,169 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "reportExportJobs": { + "methods": { + "create": { + "description": "Export a Report into a supported destination.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}/reportExportJobs", + "httpMethod": "POST", + "id": "migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where this export job will be created.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+$", + "required": true, + "type": "string" + }, + "reportExportJobId": { + "description": "Required. The ID to use for the report export job.", + "location": "query", + "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": "v1alpha1/{+parent}/reportExportJobs", + "request": { + "$ref": "ReportExportJob" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an report export job.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}/reportExportJobs/{reportExportJobsId}", + "httpMethod": "DELETE", + "id": "migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+/reportExportJobs/[^/]+$", + "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": "v1alpha1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a report export job.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}/reportExportJobs/{reportExportJobsId}", + "httpMethod": "GET", + "id": "migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+/reportExportJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "ReportExportJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all the report export jobs for a given report.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}/reportExportJobs", + "httpMethod": "GET", + "id": "migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Requested page size. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results that the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent report owning the export jobs.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/reportExportJobs", + "response": { + "$ref": "ListReportExportJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "run": { + "description": "Runs a report export job.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/reportConfigs/{reportConfigsId}/reports/{reportsId}/reportExportJobs/{reportExportJobsId}:run", + "httpMethod": "POST", + "id": "migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.run", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reportConfigs/[^/]+/reports/[^/]+/reportExportJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}:run", + "request": { + "$ref": "RunReportExportJobRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } @@ -2559,7 +2778,7 @@ } } }, - "revision": "20251023", + "revision": "20251106", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { @@ -5144,6 +5363,26 @@ }, "type": "object" }, + "ExportReportRequest": { + "description": "Request to export a detailed pricing report.", + "id": "ExportReportRequest", + "properties": {}, + "type": "object" + }, + "ExportReportResponse": { + "description": "Response message for exporting report.", + "id": "ExportReportResponse", + "properties": { + "reportArtifactLinks": { + "description": "For large generated report, we may return multiple links", + "items": { + "$ref": "ReportArtifactLink" + }, + "type": "array" + } + }, + "type": "object" + }, "FileValidationReport": { "description": "A resource that aggregates the validation errors found in an import job file.", "id": "FileValidationReport", @@ -5318,6 +5557,29 @@ }, "type": "object" }, + "GenerateReportArtifactLinkRequest": { + "description": "A request to generate a link to an artifact for a Report.", + "id": "GenerateReportArtifactLinkRequest", + "properties": { + "artifactType": { + "description": "Required. Type of the artifact requested.", + "enum": [ + "ARTIFACT_TYPE_UNSPECIFIED", + "PRESENTATION", + "SPREADSHEET", + "CSV" + ], + "enumDescriptions": [ + "Unspecified (default value).", + "Google Slides presentation.", + "Google Sheets document.", + "Comma Separated Value Text File." + ], + "type": "string" + } + }, + "type": "object" + }, "GenericInsight": { "description": "A generic insight about an asset.", "id": "GenericInsight", @@ -6391,6 +6653,26 @@ }, "type": "object" }, + "ListReportExportJobsResponse": { + "description": "Response message for listing report export jobs.", + "id": "ListReportExportJobsResponse", + "properties": { + "nextPageToken": { + "description": "Output only. A token identifying a page of results the server should return.", + "readOnly": true, + "type": "string" + }, + "reportExportJobs": { + "description": "Output only. The list of report export jobs.", + "items": { + "$ref": "ReportExportJob" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ListReportsResponse": { "description": "Response message for listing Reports.", "id": "ListReportsResponse", @@ -7706,6 +7988,11 @@ "description": "Output only. Summary view of the Report.", "readOnly": true }, + "tcoDetails": { + "$ref": "ReportTotalCostOfOwnershipDetails", + "description": "Output only. Detailed data related to TCO reports.", + "readOnly": true + }, "type": { "description": "Report type.", "enum": [ @@ -7727,6 +8014,30 @@ }, "type": "object" }, + "ReportArtifactLink": { + "description": "Describes a link to a generated artifact of the report.", + "id": "ReportArtifactLink", + "properties": { + "displayName": { + "description": "Output only. Human friendly display name of the artifact.", + "readOnly": true, + "type": "string" + }, + "uri": { + "description": "Output only. URI of the artifact.", + "readOnly": true, + "type": "string" + }, + "uriExpirationTime": { + "deprecated": true, + "description": "Output only. Expiration time of the URI.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ReportAssetFramesResponse": { "description": "A response to a call to `ReportAssetFrame`.", "id": "ReportAssetFramesResponse", @@ -7787,6 +8098,93 @@ }, "type": "object" }, + "ReportExportExecution": { + "description": "Execution status of report export operation.", + "id": "ReportExportExecution", + "properties": { + "endTime": { + "description": "Output only. Completion time of the export.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "executionId": { + "description": "Output only. Globally unique identifier of the execution.", + "readOnly": true, + "type": "string" + }, + "expireTime": { + "description": "Output only. Expiration time for the export and artifacts.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "progressPercentage": { + "description": "Output only. Represents the progress of the execution. It reaches 100 when the execution is successfully completed. When the execution finishes with a failure, the progress is set to 0.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "result": { + "$ref": "ReportExportExecutionResult", + "description": "Output only. Result of the export execution.", + "readOnly": true + }, + "startTime": { + "description": "Output only. Execution start timestamp.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ReportExportExecutionResult": { + "description": "Contains the result of the report export.", + "id": "ReportExportExecutionResult", + "properties": { + "error": { + "$ref": "Status", + "description": "Output only. Error encountered during export.", + "readOnly": true + }, + "outputFiles": { + "$ref": "OutputFileList", + "description": "Output only. List of output files.", + "readOnly": true + }, + "signedUris": { + "$ref": "SignedUris", + "description": "Output only. Signed URLs for downloading export artifacts.", + "readOnly": true + } + }, + "type": "object" + }, + "ReportExportJob": { + "description": "Report export job message.", + "id": "ReportExportJob", + "properties": { + "name": { + "description": "Output only. Identifier. Resource name.", + "readOnly": true, + "type": "string" + }, + "recentExecutions": { + "description": "Output only. Recent not expired executions of the export report job.", + "items": { + "$ref": "ReportExportExecution" + }, + "readOnly": true, + "type": "array" + }, + "signedUriDestination": { + "$ref": "SignedUriDestination", + "description": "Export with a SignedUri." + } + }, + "type": "object" + }, "ReportSummary": { "description": "Describes the Summary view of a Report, which contains aggregated values for all the groups and preference sets included in this Report.", "id": "ReportSummary", @@ -8331,6 +8729,18 @@ }, "type": "object" }, + "ReportTotalCostOfOwnershipDetails": { + "description": "Detailed data related to Total Cost of Ownership (TCO) pricing.", + "id": "ReportTotalCostOfOwnershipDetails", + "properties": { + "hasPricingData": { + "description": "Output only. Whether the report has detailed pricing data.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "ResourceLocation": { "description": "Location of a resource.", "id": "ResourceLocation", @@ -8376,6 +8786,29 @@ }, "type": "object" }, + "RunReportExportJobRequest": { + "description": "A request to run a report export job.", + "id": "RunReportExportJobRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "type": "object" + }, + "RunReportExportJobResponse": { + "description": "Response message for running a report export job.", + "id": "RunReportExportJobResponse", + "properties": { + "reportExportExecution": { + "$ref": "ReportExportExecution", + "description": "Output only. Execution status of the export operation.", + "readOnly": true + } + }, + "type": "object" + }, "RunningProcess": { "description": "Guest OS running process details.", "id": "RunningProcess", diff --git a/discovery/paymentsresellersubscription-v1.json b/discovery/paymentsresellersubscription-v1.json index 6ee93e03a77..fd767ed1e09 100644 --- a/discovery/paymentsresellersubscription-v1.json +++ b/discovery/paymentsresellersubscription-v1.json @@ -586,7 +586,7 @@ } } }, - "revision": "20251026", + "revision": "20251109", "rootUrl": "https://paymentsresellersubscription.googleapis.com/", "schemas": { "Amount": { @@ -1330,6 +1330,20 @@ "cycleOptions": { "$ref": "CycleOptions", "description": "Optional. The cycle options for the subscription." + }, + "resumeMode": { + "description": "Optional. The mode to resume the subscription.", + "enum": [ + "RESUME_MODE_UNSPECIFIED", + "RESUME_MODE_CYCLE_OPTIONS", + "RESUME_MODE_RESTORE_EXISTING_BILLING_SCHEDULE" + ], + "enumDescriptions": [ + "Reserved value for invalid or unexpected value.", + "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." + ], + "type": "string" } }, "type": "object" diff --git a/discovery/spanner-v1.json b/discovery/spanner-v1.json index 0c2e120b010..e6d96d808fe 100644 --- a/discovery/spanner-v1.json +++ b/discovery/spanner-v1.json @@ -503,6 +503,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -629,6 +634,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -1398,6 +1408,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -2328,6 +2343,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -3201,6 +3221,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -3327,6 +3352,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 e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported 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}", @@ -3406,7 +3436,7 @@ } } }, - "revision": "20251014", + "revision": "20251031", "rootUrl": "https://spanner.googleapis.com/", "schemas": { "AdaptMessageRequest": { @@ -3818,7 +3848,7 @@ "id": "BatchCreateSessionsRequest", "properties": { "sessionCount": { - "description": "Required. The number of sessions to be created in this batch call. The API can return fewer than the requested number of sessions. If a specific number of sessions are desired, the client can make additional calls to `BatchCreateSessions` (adjusting session_count as necessary).", + "description": "Required. The number of sessions to be created in this batch call. At least one session is created. The API can return fewer than the requested number of sessions. If a specific number of sessions are desired, the client can make additional calls to `BatchCreateSessions` (adjusting session_count as necessary).", "format": "int32", "type": "integer" }, @@ -5559,6 +5589,10 @@ "description": "An isolated set of Cloud Spanner resources that databases can define placements on.", "id": "InstancePartition", "properties": { + "autoscalingConfig": { + "$ref": "AutoscalingConfig", + "description": "Optional. The autoscaling configuration. Autoscaling is enabled if this field is set. When autoscaling is enabled, fields in compute_capacity are treated as OUTPUT_ONLY fields and reflect the current compute capacity allocated to the instance partition." + }, "config": { "description": "Required. The name of the instance partition's configuration. Values are of the form `projects//instanceConfigs/`. See also InstanceConfig and ListInstanceConfigs.", "type": "string" @@ -6023,6 +6057,13 @@ "$ref": "Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/sqladmin-v1.json b/discovery/sqladmin-v1.json index 5fb839b42e4..361ea0476f4 100644 --- a/discovery/sqladmin-v1.json +++ b/discovery/sqladmin-v1.json @@ -785,6 +785,38 @@ }, "instances": { "methods": { + "ListEntraIdCertificates": { + "description": "Lists all versions of EntraID certificates for the specified instance. There can be up to three sets of certificates listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out.", + "flatPath": "v1/projects/{project}/instances/{instance}/listEntraIdCertificates", + "httpMethod": "GET", + "id": "sql.instances.ListEntraIdCertificates", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Required. Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{project}/instances/{instance}/listEntraIdCertificates", + "response": { + "$ref": "InstancesListEntraIdCertificatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "ListServerCertificates": { "description": "Lists all versions of server certificates and certificate authorities (CAs) for the specified instance. There can be up to three sets of certs listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. For instances not using Certificate Authority Service (CAS) server CA, use ListServerCas instead.", "flatPath": "v1/projects/{project}/instances/{instance}/listServerCertificates", @@ -817,6 +849,41 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "RotateEntraIdCertificate": { + "description": "Rotates the server certificate version to one previously added with the addEntraIdCertificate method.", + "flatPath": "v1/projects/{project}/instances/{instance}/rotateEntraIdCertificate", + "httpMethod": "POST", + "id": "sql.instances.RotateEntraIdCertificate", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Required. Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{project}/instances/{instance}/rotateEntraIdCertificate", + "request": { + "$ref": "InstancesRotateEntraIdCertificateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "RotateServerCertificate": { "description": "Rotates the server certificate version to one previously added with the addServerCertificate method. For instances not using Certificate Authority Service (CAS) server CA, use RotateServerCa instead.", "flatPath": "v1/projects/{project}/instances/{instance}/rotateServerCertificate", @@ -2647,6 +2714,12 @@ "instance" ], "parameters": { + "databaseRoles": { + "description": "Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request.", + "location": "query", + "repeated": true, + "type": "string" + }, "host": { "description": "Optional. Host of the user in the instance.", "location": "query", @@ -2685,7 +2758,7 @@ } } }, - "revision": "20251019", + "revision": "20251107", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -4562,7 +4635,7 @@ ], "enumDescriptions": [ "This is an unknown suspension reason.", - "The instance is suspended due to billing issues (for example:, GCP account issue)", + "The instance is suspended due to billing issues (for example:, account issue)", "The instance is suspended due to illegal content (for example:, child pornography, copyrighted material, etc.).", "The instance is causing operational issues (for example:, causing the database to crash).", "The KMS key used by the instance is either revoked or denied access to" @@ -5472,7 +5545,7 @@ "type": "object" }, "noRecovery": { - "description": "Whether or not the backup importing will restore database with NORECOVERY option Applies only to Cloud SQL for SQL Server.", + "description": "Whether or not the backup importing will restore database with NORECOVERY option. Applies only to Cloud SQL for SQL Server.", "type": "boolean" }, "recoveryOnly": { @@ -5741,6 +5814,28 @@ }, "type": "object" }, + "InstancesListEntraIdCertificatesResponse": { + "description": "Instances ListEntraIdCertificates response.", + "id": "InstancesListEntraIdCertificatesResponse", + "properties": { + "activeVersion": { + "description": "The `sha1_fingerprint` of the active certificate from `certs`.", + "type": "string" + }, + "certs": { + "description": "List of Entra ID certificates for the instance.", + "items": { + "$ref": "SslCert" + }, + "type": "array" + }, + "kind": { + "description": "This is always `sql#instancesListEntraIdCertificates`.", + "type": "string" + } + }, + "type": "object" + }, "InstancesListResponse": { "description": "Database instances list response.", "id": "InstancesListResponse", @@ -5872,6 +5967,17 @@ }, "type": "object" }, + "InstancesRotateEntraIdCertificateRequest": { + "description": "Rotate Entra ID certificate request.", + "id": "InstancesRotateEntraIdCertificateRequest", + "properties": { + "rotateEntraIdCertificateContext": { + "$ref": "RotateEntraIdCertificateContext", + "description": "Optional. Contains details about the rotate server certificate operation." + } + }, + "type": "object" + }, "InstancesRotateServerCaRequest": { "description": "Rotate server CA request.", "id": "InstancesRotateServerCaRequest", @@ -5984,6 +6090,20 @@ "description": "Optional. The resource name of the server CA pool for an instance with `CUSTOMER_MANAGED_CAS_CA` as the `server_ca_mode`. Format: projects/{PROJECT}/locations/{REGION}/caPools/{CA_POOL_ID}", "type": "string" }, + "serverCertificateRotationMode": { + "description": "Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA.", + "enum": [ + "SERVER_CERTIFICATE_ROTATION_MODE_UNSPECIFIED", + "NO_AUTOMATIC_ROTATION", + "AUTOMATIC_ROTATION_DURING_MAINTENANCE" + ], + "enumDescriptions": [ + "Unspecified: no automatic server certificate rotation.", + "No automatic server certificate rotation. The user must [manage server certificate rotation](/sql/docs/mysql/manage-ssl-instance#rotate-server-certificate-cas) on their side.", + "Automatic server certificate rotation during Cloud SQL scheduled maintenance or self-service maintenance updates. Requires `server_ca_mode` to be `GOOGLE_MANAGED_CAS_CA` or `CUSTOMER_MANAGED_CAS_CA`." + ], + "type": "string" + }, "sslMode": { "description": "Specify how SSL/TLS is enforced in database connections. If you must use the `require_ssl` flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` For SQL Server: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` The value of `ssl_mode` has priority over the value of `require_ssl`. For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL connections, while `require_ssl=false` means accept both non-SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect `ssl_mode` and accepts only SSL connections.", "enum": [ @@ -6725,7 +6845,7 @@ "type": "object" }, "PointInTimeRestoreContext": { - "description": "The context to perform a point-in-time recovery of an instance managed by Google Cloud Backup and Disaster Recovery.", + "description": "The context to perform a point-in-time recovery of an instance managed by Backup and Disaster Recovery (DR) Service.", "id": "PointInTimeRestoreContext", "properties": { "allocatedIpRange": { @@ -6733,7 +6853,7 @@ "type": "string" }, "datasource": { - "description": "The Google Cloud Backup and Disaster Recovery Datasource URI. Format: projects/{project}/locations/{region}/backupVaults/{backupvault}/dataSources/{datasource}.", + "description": "The Backup and Disaster Recovery (DR) Service Datasource URI. Format: projects/{project}/locations/{region}/backupVaults/{backupvault}/dataSources/{datasource}.", "type": "string" }, "pointInTime": { @@ -7275,6 +7395,21 @@ }, "type": "object" }, + "RotateEntraIdCertificateContext": { + "description": "Instance rotate Entra ID certificate context.", + "id": "RotateEntraIdCertificateContext", + "properties": { + "kind": { + "description": "Optional. This is always `sql#rotateEntraIdCertificateContext`.", + "type": "string" + }, + "nextVersion": { + "description": "Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added server certificate version.", + "type": "string" + } + }, + "type": "object" + }, "RotateServerCaContext": { "description": "Instance rotate server CA context.", "id": "RotateServerCaContext", @@ -7422,7 +7557,7 @@ "type": "boolean" }, "dataApiAccess": { - "description": "This parameter controls whether to allow using Data API to connect to the instance. Not allowed by default.", + "description": "This parameter controls whether to allow using ExecuteSql API to connect to the instance. Not allowed by default.", "enum": [ "DATA_API_ACCESS_UNSPECIFIED", "DISALLOW_DATA_API", @@ -7430,8 +7565,8 @@ ], "enumDescriptions": [ "Unspecified, effectively the same as `DISALLOW_DATA_API`.", - "Disallow using Data API to connect to the instance.", - "Allow using Data API to connect to the instance. For private IP instances, this will allow authorized users to access the instance from the public internet." + "Disallow using ExecuteSql API to connect to the instance.", + "Allow using ExecuteSql API to connect to the instance. For private IP instances, this allows authorized users to access the instance from the public internet using ExecuteSql API." ], "type": "string" }, @@ -7523,6 +7658,10 @@ "description": "Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for MySQL and Cloud SQL for PostgreSQL instances.", "type": "boolean" }, + "entraidConfig": { + "$ref": "SqlServerEntraIdConfig", + "description": "Optional. The Microsoft Entra ID configuration for the SQL Server instance." + }, "finalBackupConfig": { "$ref": "FinalBackupConfig", "description": "Optional. The final backup configuration for the instance." @@ -8181,6 +8320,26 @@ }, "type": "object" }, + "SqlServerEntraIdConfig": { + "description": "SQL Server Entra ID configuration.", + "id": "SqlServerEntraIdConfig", + "properties": { + "applicationId": { + "description": "Optional. The application ID for the Entra ID configuration.", + "type": "string" + }, + "kind": { + "description": "Output only. This is always sql#sqlServerEntraIdConfig", + "readOnly": true, + "type": "string" + }, + "tenantId": { + "description": "Optional. The tenant ID for the Entra ID configuration.", + "type": "string" + } + }, + "type": "object" + }, "SqlServerUserDetails": { "description": "Represents a Sql Server user on the Cloud SQL instance.", "id": "SqlServerUserDetails", @@ -8478,6 +8637,13 @@ "description": "A Cloud SQL user resource.", "id": "User", "properties": { + "databaseRoles": { + "description": "Optional. Role memberships of the user", + "items": { + "type": "string" + }, + "type": "array" + }, "dualPasswordType": { "description": "Dual password status for the user.", "enum": [ @@ -8555,7 +8721,8 @@ "CLOUD_IAM_SERVICE_ACCOUNT", "CLOUD_IAM_GROUP", "CLOUD_IAM_GROUP_USER", - "CLOUD_IAM_GROUP_SERVICE_ACCOUNT" + "CLOUD_IAM_GROUP_SERVICE_ACCOUNT", + "ENTRAID_USER" ], "enumDescriptions": [ "The database's built-in user type.", @@ -8563,7 +8730,8 @@ "Cloud IAM service account.", "Cloud IAM group. Not used for login.", "Read-only. Login for a user that belongs to the Cloud IAM group.", - "Read-only. Login for a service account that belongs to the Cloud IAM group." + "Read-only. Login for a service account that belongs to the Cloud IAM group.", + "Microsoft Entra ID user." ], "type": "string" } diff --git a/discovery/sqladmin-v1beta4.json b/discovery/sqladmin-v1beta4.json index e1b3dbbe1a9..9556a441819 100644 --- a/discovery/sqladmin-v1beta4.json +++ b/discovery/sqladmin-v1beta4.json @@ -785,6 +785,38 @@ }, "instances": { "methods": { + "ListEntraIdCertificates": { + "description": "Lists all versions of EntraID certificates for the specified instance. There can be up to three sets of certificates listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out.", + "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates", + "httpMethod": "GET", + "id": "sql.instances.ListEntraIdCertificates", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Required. Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates", + "response": { + "$ref": "InstancesListEntraIdCertificatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "ListServerCertificates": { "description": "Lists all versions of server certificates and certificate authorities (CAs) for the specified instance. There can be up to three sets of certs listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. For instances not using Certificate Authority Service (CAS) server CA, use ListServerCas instead.", "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/listServerCertificates", @@ -817,6 +849,41 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "RotateEntraIdCertificate": { + "description": "Rotates the Entra Id certificate version to one previously added with the addEntraIdCertificate method.", + "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate", + "httpMethod": "POST", + "id": "sql.instances.RotateEntraIdCertificate", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Required. Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate", + "request": { + "$ref": "InstancesRotateEntraIdCertificateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "RotateServerCertificate": { "description": "Rotates the server certificate version to one previously added with the addServerCertificate method. For instances not using Certificate Authority Service (CAS) server CA, use RotateServerCa instead.", "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCertificate", @@ -887,6 +954,41 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "addEntraIdCertificate": { + "description": "Adds a new Entra ID certificate for the specified instance. If an Entra ID certificate was previously added but never used in a certificate rotation, this operation replaces that version.", + "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate", + "httpMethod": "POST", + "id": "sql.instances.addEntraIdCertificate", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Required. Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate", + "request": { + "$ref": "SqlInstancesAddEntraIdCertificateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "addServerCa": { "description": "Add a new trusted Certificate Authority (CA) version for the specified instance. Required to prepare for a certificate rotation. If a CA version was previously added but never used in a certificate rotation, this operation replaces that version. There cannot be more than one CA version waiting to be rotated in. For instances that have enabled Certificate Authority Service (CAS) based server CA, use AddServerCertificate to add a new server certificate.", "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/addServerCa", @@ -2647,6 +2749,12 @@ "instance" ], "parameters": { + "databaseRoles": { + "description": "Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request.", + "location": "query", + "repeated": true, + "type": "string" + }, "host": { "description": "Optional. Host of the user in the instance.", "location": "query", @@ -2668,6 +2776,11 @@ "location": "path", "required": true, "type": "string" + }, + "revokeExistingRoles": { + "description": "Optional. revoke the existing roles granted to the user.", + "location": "query", + "type": "boolean" } }, "path": "sql/v1beta4/projects/{project}/instances/{instance}/users", @@ -2685,7 +2798,7 @@ } } }, - "revision": "20251023", + "revision": "20251107", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -4563,7 +4676,7 @@ ], "enumDescriptions": [ "This is an unknown suspension reason.", - "The instance is suspended due to billing issues (for example:, GCP account issue)", + "The instance is suspended due to billing issues (for example:, account issue)", "The instance is suspended due to illegal content (for example:, child pornography, copyrighted material, etc.).", "The instance is causing operational issues (for example:, causing the database to crash).", "The KMS key used by the instance is either revoked or denied access to" @@ -5473,7 +5586,7 @@ "type": "object" }, "noRecovery": { - "description": "Whether or not the backup importing will restore database with NORECOVERY option Applies only to Cloud SQL for SQL Server.", + "description": "Whether or not the backup importing will restore database with NORECOVERY option. Applies only to Cloud SQL for SQL Server.", "type": "boolean" }, "recoveryOnly": { @@ -5742,6 +5855,28 @@ }, "type": "object" }, + "InstancesListEntraIdCertificatesResponse": { + "description": "Instances ListEntraIdCertificates response.", + "id": "InstancesListEntraIdCertificatesResponse", + "properties": { + "activeVersion": { + "description": "The `sha1_fingerprint` of the active certificate from `certs`.", + "type": "string" + }, + "certs": { + "description": "List of Entra ID certificates for the instance.", + "items": { + "$ref": "SslCert" + }, + "type": "array" + }, + "kind": { + "description": "This is always `sql#instancesListEntraIdCertificates`.", + "type": "string" + } + }, + "type": "object" + }, "InstancesListResponse": { "description": "Database instances list response.", "id": "InstancesListResponse", @@ -5873,6 +6008,17 @@ }, "type": "object" }, + "InstancesRotateEntraIdCertificateRequest": { + "description": "Rotate Entra ID Certificate request.", + "id": "InstancesRotateEntraIdCertificateRequest", + "properties": { + "rotateEntraIdCertificateContext": { + "$ref": "RotateEntraIdCertificateContext", + "description": "Optional. Contains details about the rotate Entra ID certificate operation." + } + }, + "type": "object" + }, "InstancesRotateServerCaRequest": { "description": "Rotate Server CA request.", "id": "InstancesRotateServerCaRequest", @@ -5985,6 +6131,20 @@ "description": "Optional. The resource name of the server CA pool for an instance with `CUSTOMER_MANAGED_CAS_CA` as the `server_ca_mode`. Format: projects/{PROJECT}/locations/{REGION}/caPools/{CA_POOL_ID}", "type": "string" }, + "serverCertificateRotationMode": { + "description": "Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA.", + "enum": [ + "SERVER_CERTIFICATE_ROTATION_MODE_UNSPECIFIED", + "NO_AUTOMATIC_ROTATION", + "AUTOMATIC_ROTATION_DURING_MAINTENANCE" + ], + "enumDescriptions": [ + "Unspecified: no automatic server certificate rotation.", + "No automatic server certificate rotation. The user must [manage server certificate rotation](/sql/docs/mysql/manage-ssl-instance#rotate-server-certificate-cas) on their side.", + "Automatic server certificate rotation during Cloud SQL scheduled maintenance or self-service maintenance updates. Requires `server_ca_mode` to be `GOOGLE_MANAGED_CAS_CA` or `CUSTOMER_MANAGED_CAS_CA`." + ], + "type": "string" + }, "sslMode": { "description": "Specify how SSL/TLS is enforced in database connections. If you must use the `require_ssl` flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` For SQL Server: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` The value of `ssl_mode` has priority over the value of `require_ssl`. For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL connections, while `require_ssl=false` means accept both non-SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect `ssl_mode` and accepts only SSL connections.", "enum": [ @@ -6726,7 +6886,7 @@ "type": "object" }, "PointInTimeRestoreContext": { - "description": "Context to perform a point-in-time restore of an instance managed by Google Cloud Backup and Disaster Recovery.", + "description": "Context to perform a point-in-time restore of an instance managed by Backup and Disaster Recovery (DR) Service.", "id": "PointInTimeRestoreContext", "properties": { "allocatedIpRange": { @@ -6734,7 +6894,7 @@ "type": "string" }, "datasource": { - "description": "The Google Cloud Backup and Disaster Recovery Datasource URI. Format: projects/{project}/locations/{region}/backupVaults/{backupvault}/dataSources/{datasource}.", + "description": "The Backup and Disaster Recovery (DR) Service Datasource URI. Format: projects/{project}/locations/{region}/backupVaults/{backupvault}/dataSources/{datasource}.", "type": "string" }, "pointInTime": { @@ -7276,6 +7436,21 @@ }, "type": "object" }, + "RotateEntraIdCertificateContext": { + "description": "Instance rotate Entra ID certificate context.", + "id": "RotateEntraIdCertificateContext", + "properties": { + "kind": { + "description": "Optional. This is always `sql#rotateEntraIdCertificateContext`.", + "type": "string" + }, + "nextVersion": { + "description": "Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added Entra ID certificate version.", + "type": "string" + } + }, + "type": "object" + }, "RotateServerCaContext": { "description": "Instance rotate server CA context.", "id": "RotateServerCaContext", @@ -7423,7 +7598,7 @@ "type": "boolean" }, "dataApiAccess": { - "description": "This parameter controls whether to allow using Data API to connect to the instance. Not allowed by default.", + "description": "This parameter controls whether to allow using ExecuteSql API to connect to the instance. Not allowed by default.", "enum": [ "DATA_API_ACCESS_UNSPECIFIED", "DISALLOW_DATA_API", @@ -7431,8 +7606,8 @@ ], "enumDescriptions": [ "Unspecified, effectively the same as `DISALLOW_DATA_API`.", - "Disallow using Data API to connect to the instance.", - "Allow using Data API to connect to the instance. For private IP instances, this will allow authorized users to access the instance from the public internet." + "Disallow using ExecuteSql API to connect to the instance.", + "Allow using ExecuteSql API to connect to the instance. For private IP instances, this allows authorized users to access the instance from the public internet using ExecuteSql API." ], "type": "string" }, @@ -7524,6 +7699,10 @@ "description": "Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for MySQL and Cloud SQL for PostgreSQL instances.", "type": "boolean" }, + "entraidConfig": { + "$ref": "SqlServerEntraIdConfig", + "description": "Optional. The Microsoft Entra ID configuration for the SQL Server instance." + }, "finalBackupConfig": { "$ref": "FinalBackupConfig", "description": "Optional. The final backup configuration for the instance." @@ -7834,6 +8013,12 @@ }, "type": "object" }, + "SqlInstancesAddEntraIdCertificateRequest": { + "description": "Request for AddEntraIdCertificate RPC.", + "id": "SqlInstancesAddEntraIdCertificateRequest", + "properties": {}, + "type": "object" + }, "SqlInstancesExecuteSqlResponse": { "description": "Execute SQL statements response.", "id": "SqlInstancesExecuteSqlResponse", @@ -8180,6 +8365,26 @@ }, "type": "object" }, + "SqlServerEntraIdConfig": { + "description": "SQL Server Entra ID configuration.", + "id": "SqlServerEntraIdConfig", + "properties": { + "applicationId": { + "description": "Optional. The application ID for the Entra ID configuration.", + "type": "string" + }, + "kind": { + "description": "Output only. This is always sql#sqlServerEntraIdConfig", + "readOnly": true, + "type": "string" + }, + "tenantId": { + "description": "Optional. The tenant ID for the Entra ID configuration.", + "type": "string" + } + }, + "type": "object" + }, "SqlServerUserDetails": { "description": "Represents a Sql Server user on the Cloud SQL instance.", "id": "SqlServerUserDetails", @@ -8477,6 +8682,13 @@ "description": "A Cloud SQL user resource.", "id": "User", "properties": { + "databaseRoles": { + "description": "Optional. Role memberships of the user", + "items": { + "type": "string" + }, + "type": "array" + }, "dualPasswordType": { "description": "Dual password status for the user.", "enum": [ @@ -8554,7 +8766,8 @@ "CLOUD_IAM_SERVICE_ACCOUNT", "CLOUD_IAM_GROUP", "CLOUD_IAM_GROUP_USER", - "CLOUD_IAM_GROUP_SERVICE_ACCOUNT" + "CLOUD_IAM_GROUP_SERVICE_ACCOUNT", + "ENTRAID_USER" ], "enumDescriptions": [ "The database's built-in user type.", @@ -8562,7 +8775,8 @@ "Cloud IAM service account.", "Cloud IAM group. Not used for login.", "Read-only. Login for a user that belongs to the Cloud IAM group.", - "Read-only. Login for a service account that belongs to the Cloud IAM group." + "Read-only. Login for a service account that belongs to the Cloud IAM group.", + "Microsoft Entra ID user." ], "type": "string" } diff --git a/src/apis/apihub/v1.ts b/src/apis/apihub/v1.ts index b02f5bdee10..cd9ecf58508 100644 --- a/src/apis/apihub/v1.ts +++ b/src/apis/apihub/v1.ts @@ -137,6 +137,65 @@ export namespace apihub_v1 { */ actionId?: string | null; } + /** + * Addon resource. + */ + export interface Schema$GoogleCloudApihubV1Addon { + /** + * Required. The configuration of the addon. + */ + config?: Schema$GoogleCloudApihubV1AddonConfig; + /** + * Output only. The time at which the addon was created. + */ + createTime?: string | null; + /** + * Required. The data source on which the addon operates. This determines which field in the `config` oneof is used. + */ + dataSource?: string | null; + /** + * Optional. The description of the addon. + */ + description?: string | null; + /** + * Required. The display name of the addon. + */ + displayName?: string | null; + /** + * Identifier. The name of the addon to enable. Format: `projects/{project\}/locations/{location\}/addons/{addon\}`. + */ + name?: string | null; + /** + * Output only. The state of the addon. + */ + state?: string | null; + /** + * Output only. The time at which the addon was last updated. + */ + updateTime?: string | null; + } + /** + * Configuration for the addon. + */ + export interface Schema$GoogleCloudApihubV1AddonConfig { + /** + * Configuration for addons which act on all data in the API hub. + */ + allDataAddonConfig?: Schema$GoogleCloudApihubV1AllDataAddonConfig; + /** + * Configuration for gateway plugin addons. + */ + gatewayPluginAddonConfig?: Schema$GoogleCloudApihubV1GatewayPluginAddonConfig; + } + /** + * 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. + */ + export interface Schema$GoogleCloudApihubV1AllDataAddonConfig { + /** + * Required. If true, the addon is enabled for all data in the API hub. + */ + enabled?: boolean | null; + } /** * The value that can be assigned to the attribute when the data type is enum. */ @@ -254,6 +313,33 @@ export namespace apihub_v1 { */ apiMetadataList?: Schema$GoogleCloudApihubV1ApiMetadataList; } + /** + * Configuration for Apigee Edge gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance. + */ + export interface Schema$GoogleCloudApihubV1ApigeeEdgeConfig { + /** + * Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering. + */ + environmentFilter?: Schema$GoogleCloudApihubV1EnvironmentFilter; + } + /** + * Configuration for Apigee OPDK gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance. + */ + export interface Schema$GoogleCloudApihubV1ApigeeOPDKConfig { + /** + * Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering. + */ + environmentFilter?: Schema$GoogleCloudApihubV1EnvironmentFilter; + } + /** + * Configuration for Apigee X and Apigee Hybrid gateways. Applicability of a filter is determined by the filter being provided. If none of the filters are provided the addon will be enabled for all data brought in by the gateway plugin instance. + */ + export interface Schema$GoogleCloudApihubV1ApigeeXHybridConfig { + /** + * Optional. The filter to apply on the resources managed by the gateway plugin instance. If provided this filter applies environment specific filtering. + */ + environmentFilter?: Schema$GoogleCloudApihubV1EnvironmentFilter; + } /** * An ApiHubInstance represents the instance resources of the API Hub. Currently, only one ApiHub instance is allowed for each project. */ @@ -1115,6 +1201,19 @@ export namespace apihub_v1 { */ values?: Schema$GoogleCloudApihubV1AllowedValue[]; } + /** + * Filter for environments. + */ + export interface Schema$GoogleCloudApihubV1EnvironmentFilter { + /** + * Optional. Indicates if this filter should match all environments or only a subset of environments. If set to true, all environments are matched. + */ + allEnvironments?: boolean | null; + /** + * Optional. If provided, only environments in this list are matched. This field is ignored if `all_environments` is true. + */ + environments?: string[] | null; + } /** * The ExecutePluginInstanceAction method's request. */ @@ -1180,6 +1279,36 @@ export namespace apihub_v1 { */ updateTime?: string | null; } + /** + * Configuration for gateway plugin addons. This is used to specify the list of gateway plugin configs for which the addon is enabled. + */ + export interface Schema$GoogleCloudApihubV1GatewayPluginAddonConfig { + /** + * Required. The list of gateway plugin configs for which the addon is enabled. Each gateway plugin config should have a unique plugin instance. + */ + gatewayPluginConfigs?: Schema$GoogleCloudApihubV1GatewayPluginConfig[]; + } + /** + * Configuration for a gateway plugin. This is used to specify configs for different gateways. + */ + export interface Schema$GoogleCloudApihubV1GatewayPluginConfig { + /** + * Configuration for Apigee Edge gateways. + */ + apigeeEdgeConfig?: Schema$GoogleCloudApihubV1ApigeeEdgeConfig; + /** + * Configuration for Apigee OPDK gateways. + */ + apigeeOpdkConfig?: Schema$GoogleCloudApihubV1ApigeeOPDKConfig; + /** + * Configuration for Apigee X and Apigee Hybrid gateways. + */ + apigeeXHybridConfig?: Schema$GoogleCloudApihubV1ApigeeXHybridConfig; + /** + * Required. The name of the gateway plugin instance for which the config is to be specified. Format: projects/{project\}/locations/{location\}/plugins/{plugin\}/pluginInstances/{plugin_instance\} + */ + pluginInstance?: string | null; + } /** * Config for Google service account authentication. */ @@ -1371,6 +1500,19 @@ export namespace apihub_v1 { * The LintSpec method's request. */ export interface Schema$GoogleCloudApihubV1LintSpecRequest {} + /** + * The ListAddons method's response. + */ + export interface Schema$GoogleCloudApihubV1ListAddonsResponse { + /** + * The list of addons. + */ + addons?: Schema$GoogleCloudApihubV1Addon[]; + /** + * A token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + } /** * The ListApiOperations method's response. */ @@ -1584,6 +1726,15 @@ export namespace apihub_v1 { */ runtimeProjectAttachment?: Schema$GoogleCloudApihubV1RuntimeProjectAttachment; } + /** + * The ManageAddonConfig method's request. + */ + export interface Schema$GoogleCloudApihubV1ManageAddonConfigRequest { + /** + * Required. The config of the addon to be managed. This config will replace the config present in the addon. The type of the config should match the config type already present in the addon. + */ + config?: Schema$GoogleCloudApihubV1AddonConfig; + } /** * The ManagePluginInstanceSourceData method's request. */ @@ -1884,6 +2035,12 @@ export namespace apihub_v1 { * Identifier. The unique name of the plugin instance resource. Format: `projects/{project\}/locations/{location\}/plugins/{plugin\}/instances/{instance\}` */ name?: string | null; + /** + * Optional. The source environment's config present in the gateway instance linked to the plugin instance. The key is the `source_environment` name from the SourceEnvironment message. + */ + sourceEnvironmentsConfig?: { + [key: string]: Schema$GoogleCloudApihubV1SourceEnvironment; + } | null; /** * Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins. */ @@ -2098,6 +2255,27 @@ export namespace apihub_v1 { */ secretVersion?: string | null; } + /** + * Message representing the source environment details. + */ + export interface Schema$GoogleCloudApihubV1SourceEnvironment { + /** + * Optional. The time at which the environment was created at the source. + */ + createTime?: string | null; + /** + * Required. The name of the environment at the source. This should map to Deployment. + */ + sourceEnvironment?: string | null; + /** + * The location where additional information about source environments can be found. The location should be relative path of the environment manifest with respect to a plugin instance. + */ + sourceEnvironmentUri?: string | null; + /** + * Optional. The time at which the environment was last updated at the source. + */ + updateTime?: string | null; + } /** * SourceMetadata represents the metadata for a resource at the source. */ @@ -2540,6 +2718,7 @@ export namespace apihub_v1 { export class Resource$Projects$Locations { context: APIRequestContext; + addons: Resource$Projects$Locations$Addons; apiHubInstances: Resource$Projects$Locations$Apihubinstances; apis: Resource$Projects$Locations$Apis; attributes: Resource$Projects$Locations$Attributes; @@ -2554,6 +2733,7 @@ export namespace apihub_v1 { runtimeProjectAttachments: Resource$Projects$Locations$Runtimeprojectattachments; constructor(context: APIRequestContext) { this.context = context; + this.addons = new Resource$Projects$Locations$Addons(this.context); this.apiHubInstances = new Resource$Projects$Locations$Apihubinstances( this.context ); @@ -3406,6 +3586,502 @@ export namespace apihub_v1 { requestBody?: Schema$GoogleCloudApihubV1SearchResourcesRequest; } + export class Resource$Projects$Locations$Addons { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Get an addon. + * @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.addons.get({ + * // Required. The name of the addon to get. Format: `projects/{project\}/locations/{location\}/addons/{addon\}`. + * name: 'projects/my-project/locations/my-location/addons/my-addon', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "config": {}, + * // "createTime": "my_createTime", + * // "dataSource": "my_dataSource", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "state": "my_state", + * // "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$Addons$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Addons$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Addons$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Addons$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Addons$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addons$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addons$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Addons$Get; + 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: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * List addons. + * @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.addons.list({ + * // Optional. An expression that filters the list of addons. The only supported filter is `plugin_instance_name`. It can be used to filter addons that are enabled for a given plugin instance. The format of the filter is `plugin_instance_name = "projects/{project\}/locations/{location\}/plugins/{plugin\}/instances/{instance\}"`. + * filter: 'placeholder-value', + * // Optional. The maximum number of hub addons to return. The service may return fewer than this value. If unspecified, at most 50 hub addons 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 `ListAddons` call. Provide this to retrieve the subsequent page. When paginating, all other parameters (except page_size) provided to `ListAddons` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource where this addon will be created. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "addons": [], + * // "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$Addons$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Addons$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Addons$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Addons$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Addons$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addons$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addons$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Addons$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://apihub.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/addons').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 + ); + } + } + + /** + * Manage addon config. This RPC is used for managing the config of the addon. Calling this RPC moves the addon into an updating state until the long-running operation succeeds. + * @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.addons.manageConfig({ + * // Required. The name of the addon for which the config is to be managed. Format: `projects/{project\}/locations/{location\}/addons/{addon\}`. + * name: 'projects/my-project/locations/my-location/addons/my-addon', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "config": {} + * // } + * }, + * }); + * 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. + */ + manageConfig( + params: Params$Resource$Projects$Locations$Addons$Manageconfig, + options: StreamMethodOptions + ): Promise>; + manageConfig( + params?: Params$Resource$Projects$Locations$Addons$Manageconfig, + options?: MethodOptions + ): Promise>; + manageConfig( + params: Params$Resource$Projects$Locations$Addons$Manageconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + manageConfig( + params: Params$Resource$Projects$Locations$Addons$Manageconfig, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + manageConfig( + params: Params$Resource$Projects$Locations$Addons$Manageconfig, + callback: BodyResponseCallback + ): void; + manageConfig( + callback: BodyResponseCallback + ): void; + manageConfig( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addons$Manageconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addons$Manageconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Addons$Manageconfig; + 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}:manageConfig').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$Addons$Get + extends StandardParameters { + /** + * Required. The name of the addon to get. Format: `projects/{project\}/locations/{location\}/addons/{addon\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Addons$List + extends StandardParameters { + /** + * Optional. An expression that filters the list of addons. The only supported filter is `plugin_instance_name`. It can be used to filter addons that are enabled for a given plugin instance. The format of the filter is `plugin_instance_name = "projects/{project\}/locations/{location\}/plugins/{plugin\}/instances/{instance\}"`. + */ + filter?: string; + /** + * Optional. The maximum number of hub addons to return. The service may return fewer than this value. If unspecified, at most 50 hub addons 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 `ListAddons` call. Provide this to retrieve the subsequent page. When paginating, all other parameters (except page_size) provided to `ListAddons` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent resource where this addon will be created. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Addons$Manageconfig + extends StandardParameters { + /** + * Required. The name of the addon for which the config is to be managed. Format: `projects/{project\}/locations/{location\}/addons/{addon\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudApihubV1ManageAddonConfigRequest; + } + export class Resource$Projects$Locations$Apihubinstances { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -15495,6 +16171,7 @@ export namespace apihub_v1 { * // "displayName": "my_displayName", * // "errorMessage": "my_errorMessage", * // "name": "my_name", + * // "sourceEnvironmentsConfig": {}, * // "sourceProjectId": "my_sourceProjectId", * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -16263,6 +16940,7 @@ export namespace apihub_v1 { * // "displayName": "my_displayName", * // "errorMessage": "my_errorMessage", * // "name": "my_name", + * // "sourceEnvironmentsConfig": {}, * // "sourceProjectId": "my_sourceProjectId", * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -16731,6 +17409,7 @@ export namespace apihub_v1 { * // "displayName": "my_displayName", * // "errorMessage": "my_errorMessage", * // "name": "my_name", + * // "sourceEnvironmentsConfig": {}, * // "sourceProjectId": "my_sourceProjectId", * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -16748,6 +17427,7 @@ export namespace apihub_v1 { * // "displayName": "my_displayName", * // "errorMessage": "my_errorMessage", * // "name": "my_name", + * // "sourceEnvironmentsConfig": {}, * // "sourceProjectId": "my_sourceProjectId", * // "state": "my_state", * // "updateTime": "my_updateTime" diff --git a/src/apis/artifactregistry/v1.ts b/src/apis/artifactregistry/v1.ts index ff9735b05ac..7eff5a7ac24 100644 --- a/src/apis/artifactregistry/v1.ts +++ b/src/apis/artifactregistry/v1.ts @@ -2411,7 +2411,7 @@ export namespace artifactregistry_v1 { * * // Do the magic * const res = await artifactregistry.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -2694,7 +2694,7 @@ export namespace artifactregistry_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/artifactregistry/v1beta1.ts b/src/apis/artifactregistry/v1beta1.ts index 6007febfa05..41ac7cb921f 100644 --- a/src/apis/artifactregistry/v1beta1.ts +++ b/src/apis/artifactregistry/v1beta1.ts @@ -701,7 +701,7 @@ export namespace artifactregistry_v1beta1 { * * // Do the magic * const res = await artifactregistry.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -830,7 +830,7 @@ export namespace artifactregistry_v1beta1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/backupdr/v1.ts b/src/apis/backupdr/v1.ts index 8980603df9b..a0b1ab38ba8 100644 --- a/src/apis/backupdr/v1.ts +++ b/src/apis/backupdr/v1.ts @@ -379,6 +379,10 @@ export namespace backupdr_v1 { * Optional. The list of BackupLocks taken by the accessor Backup Appliance. */ backupApplianceLocks?: Schema$BackupLock[]; + /** + * Output only. Setting for how the enforced retention end time is inherited. This value is copied from this backup's BackupVault. + */ + backupRetentionInheritance?: string | null; /** * Output only. Type of the backup, unspecified, scheduled or ondemand. */ @@ -427,6 +431,10 @@ export namespace backupdr_v1 { * Output only. Unique identifier of the GCP resource that is being backed up. */ gcpResource?: Schema$BackupGcpResource; + /** + * Optional. Output only. The list of KMS key versions used to encrypt the backup. + */ + kmsKeyVersions?: string[] | null; /** * Optional. Resource labels to represent user provided metadata. No labels currently defined. */ @@ -883,6 +891,10 @@ export namespace backupdr_v1 { * Required. The default and minimum enforced retention for each backup within the backup vault. The enforced retention for each backup can be extended. Note: Longer minimum enforced retention period impacts potential storage costs post introductory trial. We recommend starting with a short duration of 3 days or less. */ backupMinimumEnforcedRetentionDuration?: string | null; + /** + * Optional. Setting for how a backup's enforced retention end time is inherited. + */ + backupRetentionInheritance?: string | null; /** * Output only. The time when the instance was created. */ @@ -899,6 +911,10 @@ export namespace backupdr_v1 { * Optional. Time after which the BackupVault resource is locked. */ effectiveTime?: string | null; + /** + * Optional. The encryption config of the backup vault. + */ + encryptionConfig?: Schema$EncryptionConfig; /** * Optional. Server specified ETag for the backup vault resource to prevent simultaneous updates from overwiting each other. */ @@ -1676,6 +1692,15 @@ export namespace backupdr_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 {} + /** + * Message describing the EncryptionConfig of backup vault. This determines how data within the vault is encrypted at rest. + */ + export interface Schema$EncryptionConfig { + /** + * Optional. The Cloud KMS key name to encrypt backups in this backup vault. Must be in the same region as the vault. Some workload backups like compute disk backups may use their inherited source key instead. Format: projects/{project\}/locations/{location\}/keyRings/{ring\}/cryptoKeys/{key\} + */ + kmsKeyName?: string | null; + } /** * A key/value pair to be used for storing metadata. */ @@ -2553,6 +2578,10 @@ export namespace backupdr_v1 { * Request message for restoring from a Backup. */ export interface Schema$RestoreBackupRequest { + /** + * Optional. A field mask used to clear server-side default values for fields within the `instance_properties` oneof. When a field in this mask is cleared, the server will not apply its default logic (like inheriting a value from the source) for that field. The most common current use case is clearing default encryption keys. Examples of field mask paths: - Compute Instance Disks: `compute_instance_restore_properties.disks.*.disk_encryption_key` - Single Disk: `disk_restore_properties.disk_encryption_key` + */ + clearOverridesFieldMask?: string | null; /** * Compute Engine instance properties to be overridden during restore. */ @@ -2841,6 +2870,10 @@ export namespace backupdr_v1 { * Optional. The duration for which backup data will be kept, while taking an on-demand backup with custom retention. It is defined in "days". It is mutually exclusive with rule_id. This field is required if rule_id is not provided. */ customRetentionDays?: number | null; + /** + * Optional. Labels to be applied on the backup. + */ + labels?: {[key: string]: string} | null; /** * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */ @@ -4378,6 +4411,7 @@ export namespace backupdr_v1 { * // request body parameters * // { * // "customRetentionDays": 0, + * // "labels": {}, * // "requestId": "my_requestId", * // "ruleId": "my_ruleId" * // } @@ -5850,10 +5884,12 @@ export namespace backupdr_v1 { * // "annotations": {}, * // "backupCount": "my_backupCount", * // "backupMinimumEnforcedRetentionDuration": "my_backupMinimumEnforcedRetentionDuration", + * // "backupRetentionInheritance": "my_backupRetentionInheritance", * // "createTime": "my_createTime", * // "deletable": false, * // "description": "my_description", * // "effectiveTime": "my_effectiveTime", + * // "encryptionConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", @@ -6320,10 +6356,12 @@ export namespace backupdr_v1 { * // "annotations": {}, * // "backupCount": "my_backupCount", * // "backupMinimumEnforcedRetentionDuration": "my_backupMinimumEnforcedRetentionDuration", + * // "backupRetentionInheritance": "my_backupRetentionInheritance", * // "createTime": "my_createTime", * // "deletable": false, * // "description": "my_description", * // "effectiveTime": "my_effectiveTime", + * // "encryptionConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", @@ -6630,10 +6668,12 @@ export namespace backupdr_v1 { * // "annotations": {}, * // "backupCount": "my_backupCount", * // "backupMinimumEnforcedRetentionDuration": "my_backupMinimumEnforcedRetentionDuration", + * // "backupRetentionInheritance": "my_backupRetentionInheritance", * // "createTime": "my_createTime", * // "deletable": false, * // "description": "my_description", * // "effectiveTime": "my_effectiveTime", + * // "encryptionConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", @@ -8948,6 +8988,7 @@ export namespace backupdr_v1 { * // "alloyDbBackupProperties": {}, * // "backupApplianceBackupProperties": {}, * // "backupApplianceLocks": [], + * // "backupRetentionInheritance": "my_backupRetentionInheritance", * // "backupType": "my_backupType", * // "cloudSqlInstanceBackupProperties": {}, * // "computeInstanceBackupProperties": {}, @@ -8960,6 +9001,7 @@ export namespace backupdr_v1 { * // "expireTime": "my_expireTime", * // "gcpBackupPlanInfo": {}, * // "gcpResource": {}, + * // "kmsKeyVersions": [], * // "labels": {}, * // "name": "my_name", * // "resourceSizeBytes": "my_resourceSizeBytes", @@ -9262,6 +9304,7 @@ export namespace backupdr_v1 { * // "alloyDbBackupProperties": {}, * // "backupApplianceBackupProperties": {}, * // "backupApplianceLocks": [], + * // "backupRetentionInheritance": "my_backupRetentionInheritance", * // "backupType": "my_backupType", * // "cloudSqlInstanceBackupProperties": {}, * // "computeInstanceBackupProperties": {}, @@ -9274,6 +9317,7 @@ export namespace backupdr_v1 { * // "expireTime": "my_expireTime", * // "gcpBackupPlanInfo": {}, * // "gcpResource": {}, + * // "kmsKeyVersions": [], * // "labels": {}, * // "name": "my_name", * // "resourceSizeBytes": "my_resourceSizeBytes", @@ -9429,6 +9473,7 @@ export namespace backupdr_v1 { * requestBody: { * // request body parameters * // { + * // "clearOverridesFieldMask": "my_clearOverridesFieldMask", * // "computeInstanceRestoreProperties": {}, * // "computeInstanceTargetEnvironment": {}, * // "diskRestoreProperties": {}, diff --git a/src/apis/beyondcorp/v1.ts b/src/apis/beyondcorp/v1.ts index 86736fc9a6c..f40b5d7ce88 100644 --- a/src/apis/beyondcorp/v1.ts +++ b/src/apis/beyondcorp/v1.ts @@ -102,7 +102,7 @@ export namespace beyondcorp_v1 { /** * BeyondCorp API * - * Beyondcorp Enterprise provides identity and context aware access controls for enterprise resources and enables zero-trust access. Using the Beyondcorp Enterprise APIs, enterprises can set up multi-cloud and on-prem connectivity solutions. + * Chrome Enterprise Premium is a secure enterprise browsing solution that provides secure access to applications and resources, and offers integrated threat and data protection. It adds an extra layer of security to safeguard your Chrome browser environment, including Data Loss Prevention (DLP), real-time URL and file scanning, and Context-Aware Access for SaaS and web apps. * * @example * ```js @@ -1042,7 +1042,7 @@ export namespace beyondcorp_v1 { */ displayName?: string | null; /** - * Required. Endpoint matchers associated with an application. A combination of hostname and ports as endpoint matchers is used to match the application. Match conditions for OR logic. An array of match conditions to allow for multiple matching criteria. The rule is considered a match if one of the conditions is met. The conditions should be the following combination: (Hostname & Ports) EXAMPLES: Hostname and Ports - ("*.example.com", "443"), ("example.com" and "22"), ("example.com" and "22,33") etc + * Optional. An array of conditions to match the application's network endpoint. Each element in the array is an EndpointMatcher object, which defines a specific combination of a hostname pattern and one or more ports. The application is considered matched if at least one of the EndpointMatcher conditions in this array is met (the conditions are combined using OR logic). Each EndpointMatcher must contain a hostname pattern, such as "example.com", and one or more port numbers specified as a string, such as "443". Hostname and port number examples: "*.example.com", "443" "example.com" and "22" "example.com" and "22,33" */ endpointMatchers?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1EndpointMatcher[]; /** @@ -1106,11 +1106,11 @@ export namespace beyondcorp_v1 { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeaders { /** - * Optional. Device info configuration. + * Optional. The device information configuration. */ deviceInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedDeviceInfo; /** - * Optional. Group info configuration. + * Optional. Group details. */ groupInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedGroupInfo; /** @@ -1118,34 +1118,34 @@ export namespace beyondcorp_v1 { */ outputType?: string | null; /** - * Optional. User info configuration. + * Optional. User details. */ userInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedUserInfo; } /** - * Delegated device info configuration. + * The delegated device information configuration. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedDeviceInfo { /** - * Optional. The output type of the delegated device info. + * Optional. The output type details for the delegated device. */ outputType?: string | null; } /** - * Delegated group info configuration. + * The delegated group configuration details. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedGroupInfo { /** - * Optional. The output type of the delegated group info. + * Optional. The output type of the delegated group information. */ outputType?: string | null; } /** - * Delegated user info configuration. + * The configuration information for the delegated user. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeadersDelegatedUserInfo { /** - * Optional. The output type of the delegated user info. + * Optional. The delegated user's information. */ outputType?: string | null; } @@ -1180,7 +1180,7 @@ export namespace beyondcorp_v1 { */ hostname?: string | null; /** - * Required. Ports of the application. + * Required. The ports of the application. */ ports?: number[] | null; } @@ -1253,11 +1253,11 @@ export namespace beyondcorp_v1 { */ contextualHeaders?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ContextualHeaders; /** - * Optional. Gateway identity configuration. + * Optional. The security gateway identity configuration. */ gatewayIdentity?: string | null; /** - * Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: \> Field names SHOULD constrain themselves to alphanumeric characters, "-", and ".", and SHOULD begin with a letter. Field values SHOULD contain only ASCII printable characters and tab. + * Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: \>Field names can contain alphanumeric characters, hyphens, and periods, can contain only ASCII-printable characters and tabs, and must start with a letter. */ metadataHeaders?: {[key: string]: string} | null; } @@ -1364,7 +1364,7 @@ export namespace beyondcorp_v1 { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor { /** - * Required. Contains uri path fragment where HTTP request is sent. + * Required. Contains the URI path fragment where HTTP request is sent. */ path?: string | null; } @@ -2497,7 +2497,7 @@ export namespace beyondcorp_v1 { * * // Do the magic * const res = await beyondcorp.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -2633,7 +2633,7 @@ export namespace beyondcorp_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/beyondcorp/v1alpha.ts b/src/apis/beyondcorp/v1alpha.ts index 017fcb01d20..09e9c5921ab 100644 --- a/src/apis/beyondcorp/v1alpha.ts +++ b/src/apis/beyondcorp/v1alpha.ts @@ -102,7 +102,7 @@ export namespace beyondcorp_v1alpha { /** * BeyondCorp API * - * Beyondcorp Enterprise provides identity and context aware access controls for enterprise resources and enables zero-trust access. Using the Beyondcorp Enterprise APIs, enterprises can set up multi-cloud and on-prem connectivity solutions. + * Chrome Enterprise Premium is a secure enterprise browsing solution that provides secure access to applications and resources, and offers integrated threat and data protection. It adds an extra layer of security to safeguard your Chrome browser environment, including Data Loss Prevention (DLP), real-time URL and file scanning, and Context-Aware Access for SaaS and web apps. * * @example * ```js @@ -1500,7 +1500,7 @@ export namespace beyondcorp_v1alpha { */ displayName?: string | null; /** - * Required. Endpoint matchers associated with an application. A combination of hostname and ports as endpoint matchers is used to match the application. Match conditions for OR logic. An array of match conditions to allow for multiple matching criteria. The rule is considered a match if one of the conditions is met. The conditions should be the following combination: (Hostname & Ports) EXAMPLES: Hostname and Ports - ("*.example.com", "443"), ("example.com" and "22"), ("example.com" and "22,33") etc + * Optional. An array of conditions to match the application's network endpoint. Each element in the array is an EndpointMatcher object, which defines a specific combination of a hostname pattern and one or more ports. The application is considered matched if at least one of the EndpointMatcher conditions in this array is met (the conditions are combined using OR logic). Each EndpointMatcher must contain a hostname pattern, such as "example.com", and one or more port numbers specified as a string, such as "443". Hostname and port number examples: "*.example.com", "443" "example.com" and "22" "example.com" and "22,33" */ endpointMatchers?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaEndpointMatcher[]; /** @@ -1564,11 +1564,11 @@ export namespace beyondcorp_v1alpha { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeaders { /** - * Optional. Device info configuration. + * Optional. The device information configuration. */ deviceInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedDeviceInfo; /** - * Optional. Group info configuration. + * Optional. Group details. */ groupInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedGroupInfo; /** @@ -1576,34 +1576,34 @@ export namespace beyondcorp_v1alpha { */ outputType?: string | null; /** - * Optional. User info configuration. + * Optional. User details. */ userInfo?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedUserInfo; } /** - * Delegated device info configuration. + * The delegated device information configuration. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedDeviceInfo { /** - * Optional. The output type of the delegated device info. + * Optional. The output type details for the delegated device. */ outputType?: string | null; } /** - * Delegated group info configuration. + * The delegated group configuration details. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedGroupInfo { /** - * Optional. The output type of the delegated group info. + * Optional. The output type of the delegated group information. */ outputType?: string | null; } /** - * Delegated user info configuration. + * The configuration information for the delegated user. */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeadersDelegatedUserInfo { /** - * Optional. The output type of the delegated user info. + * Optional. The delegated user's information. */ outputType?: string | null; } @@ -1638,7 +1638,7 @@ export namespace beyondcorp_v1alpha { */ hostname?: string | null; /** - * Required. Ports of the application. + * Required. The ports of the application. */ ports?: number[] | null; } @@ -1711,11 +1711,11 @@ export namespace beyondcorp_v1alpha { */ contextualHeaders?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaContextualHeaders; /** - * Optional. Gateway identity configuration. + * Optional. The security gateway identity configuration. */ gatewayIdentity?: string | null; /** - * Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: \> Field names SHOULD constrain themselves to alphanumeric characters, "-", and ".", and SHOULD begin with a letter. Field values SHOULD contain only ASCII printable characters and tab. + * Optional. Custom resource specific headers along with the values. The names should conform to RFC 9110: \>Field names can contain alphanumeric characters, hyphens, and periods, can contain only ASCII-printable characters and tabs, and must start with a letter. */ metadataHeaders?: {[key: string]: string} | null; } @@ -1822,7 +1822,7 @@ export namespace beyondcorp_v1alpha { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor { /** - * Required. Contains uri path fragment where HTTP request is sent. + * Required. Contains the URI path fragment where HTTP request is sent. */ path?: string | null; } @@ -5312,7 +5312,7 @@ export namespace beyondcorp_v1alpha { * * // Do the magic * const res = await beyondcorp.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -5448,7 +5448,7 @@ export namespace beyondcorp_v1alpha { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/bigquerydatatransfer/v1.ts b/src/apis/bigquerydatatransfer/v1.ts index 1eeaf1da6c6..5bf8cc43794 100644 --- a/src/apis/bigquerydatatransfer/v1.ts +++ b/src/apis/bigquerydatatransfer/v1.ts @@ -1749,7 +1749,7 @@ export namespace bigquerydatatransfer_v1 { * * // Do the magic * const res = await bigquerydatatransfer.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -2039,7 +2039,7 @@ export namespace bigquerydatatransfer_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/chat/v1.ts b/src/apis/chat/v1.ts index 9865eb4f469..0504d6008e1 100644 --- a/src/apis/chat/v1.ts +++ b/src/apis/chat/v1.ts @@ -279,7 +279,7 @@ export namespace chat_v1 { */ driveDataRef?: Schema$DriveDataRef; /** - * Optional. Resource name of the attachment, in the form `spaces/{space\}/messages/{message\}/attachments/{attachment\}`. + * Identifier. Resource name of the attachment. Format: `spaces/{space\}/messages/{message\}/attachments/{attachment\}`. */ name?: string | null; /** @@ -853,7 +853,7 @@ export namespace chat_v1 { */ displayStyle?: string | null; /** - * The expression data for the card. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * The expression data for the card. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ expressionData?: Schema$GoogleAppsCardV1ExpressionData[]; /** @@ -1044,7 +1044,7 @@ export namespace chat_v1 { columnItems?: Schema$GoogleAppsCardV1Column[]; } /** - * Represents an action that is not specific to a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents an action that is not specific to a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1CommonWidgetAction { /** @@ -1053,7 +1053,7 @@ export namespace chat_v1 { updateVisibilityAction?: Schema$GoogleAppsCardV1UpdateVisibilityAction; } /** - * Represents a condition that can be used to trigger an action. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents a condition that can be used to trigger an action. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1Condition { /** @@ -1066,7 +1066,7 @@ export namespace chat_v1 { expressionDataCondition?: Schema$GoogleAppsCardV1ExpressionDataCondition; } /** - * A configuration object that helps configure the data sources for a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * A configuration object that helps configure the data sources for a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1DataSourceConfig { /** @@ -1083,7 +1083,7 @@ export namespace chat_v1 { */ export interface Schema$GoogleAppsCardV1DateTimePicker { /** - * A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Only supported by Google Workspace Workflows, but not Google Chat API or Google Workspace Add-ons. + * A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ hostAppDataSource?: Schema$HostAppDataSourceMarkup; /** @@ -1177,7 +1177,7 @@ export namespace chat_v1 { */ export interface Schema$GoogleAppsCardV1Divider {} /** - * Represents an actionthat can be performed on an ui element. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents an actionthat can be performed on an ui element. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1EventAction { /** @@ -1194,7 +1194,7 @@ export namespace chat_v1 { postEventTriggers?: Schema$GoogleAppsCardV1Trigger[]; } /** - * Represents the data that is used to evaluate an expression. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents the data that is used to evaluate an expression. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1ExpressionData { /** @@ -1215,7 +1215,7 @@ export namespace chat_v1 { id?: string | null; } /** - * Represents a condition that is evaluated using CEL. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents a condition that is evaluated using CEL. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1ExpressionDataCondition { /** @@ -1489,7 +1489,7 @@ export namespace chat_v1 { */ header?: string | null; /** - * A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ id?: string | null; /** @@ -1506,7 +1506,7 @@ export namespace chat_v1 { */ export interface Schema$GoogleAppsCardV1SelectionInput { /** - * Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source. If specified, the `multi_select_max_selected_items` field, `multi_select_min_query_length` field, `external_data_source` field and `platform_data_source` field are ignored. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source. If specified, the `multi_select_max_selected_items` field, `multi_select_min_query_length` field, `external_data_source` field and `platform_data_source` field are ignored. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ dataSourceConfigs?: Schema$GoogleAppsCardV1DataSourceConfig[]; /** @@ -1514,7 +1514,7 @@ export namespace chat_v1 { */ externalDataSource?: Schema$GoogleAppsCardV1Action; /** - * Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible. Only supported by Google Workspace Workflows, but not Google Chat API or Google Workspace Add-ons. + * Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ hintText?: string | null; /** @@ -1628,7 +1628,7 @@ export namespace chat_v1 { */ hintText?: string | null; /** - * A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ hostAppDataSource?: Schema$HostAppDataSourceMarkup; /** @@ -1682,7 +1682,7 @@ export namespace chat_v1 { textSyntax?: string | null; } /** - * Represents a trigger. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents a trigger. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1Trigger { /** @@ -1691,7 +1691,7 @@ export namespace chat_v1 { actionRuleId?: string | null; } /** - * Represents an action that updates the visibility of a widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Represents an action that updates the visibility of a widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ export interface Schema$GoogleAppsCardV1UpdateVisibilityAction { /** @@ -1745,7 +1745,7 @@ export namespace chat_v1 { */ divider?: Schema$GoogleAppsCardV1Divider; /** - * Specifies the event actions that can be performed on the widget. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Specifies the event actions that can be performed on the widget. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ eventActions?: Schema$GoogleAppsCardV1EventAction[]; /** @@ -1757,7 +1757,7 @@ export namespace chat_v1 { */ horizontalAlignment?: string | null; /** - * A unique ID assigned to the widget that's used to identify the widget to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+` and. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * A unique ID assigned to the widget that's used to identify the widget to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+` and. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ id?: string | null; /** @@ -1777,7 +1777,7 @@ export namespace chat_v1 { */ textParagraph?: Schema$GoogleAppsCardV1TextParagraph; /** - * Specifies whether the widget is visible or hidden. The default value is `VISIBLE`. Only supported by Google Workspace Workflow, but not Google Chat apps or Google Workspace add-ons. + * Specifies whether the widget is visible or hidden. The default value is `VISIBLE`. Available for Google Workspace add-ons that extend Google Workspace flows, which is available as part of the [Gemini Alpha program](https://support.google.com/a/answer/14170809). Unavailable for Google Chat apps. */ visibility?: string | null; } diff --git a/src/apis/cloudbuild/v1.ts b/src/apis/cloudbuild/v1.ts index 773ec7ed3e4..ee872ff84f3 100644 --- a/src/apis/cloudbuild/v1.ts +++ b/src/apis/cloudbuild/v1.ts @@ -884,6 +884,10 @@ export namespace cloudbuild_v1 { * An image built by the pipeline. */ export interface Schema$BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -2398,6 +2402,10 @@ export namespace cloudbuild_v1 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -2415,6 +2423,10 @@ export namespace cloudbuild_v1 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -2432,6 +2444,10 @@ export namespace cloudbuild_v1 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -2449,6 +2465,10 @@ export namespace cloudbuild_v1 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/cloudresourcemanager/v3.ts b/src/apis/cloudresourcemanager/v3.ts index b9b7e84816a..a9f856a87bf 100644 --- a/src/apis/cloudresourcemanager/v3.ts +++ b/src/apis/cloudresourcemanager/v3.ts @@ -599,7 +599,7 @@ export namespace cloudresourcemanager_v3 { */ export interface Schema$ListTagValuesResponse { /** - * A pagination token returned from a previous call to `ListTagValues` that indicates from where listing should continue. This is currently not used, but the server may at any point start supplying a valid token. + * A pagination token returned from a previous call to `ListTagValues` that indicates from where listing should continue. */ nextPageToken?: string | null; /** @@ -939,6 +939,10 @@ export namespace cloudresourcemanager_v3 { * A TagKey, used to group a set of TagValues. */ export interface Schema$TagKey { + /** + * Optional. Regular expression constraint for freeform tag values. If present, it implicitly allows freeform values (constrained by the regex). + */ + allowedValuesRegex?: string | null; /** * Output only. Creation time. */ @@ -4259,7 +4263,7 @@ export namespace cloudresourcemanager_v3 { } /** - * Updates tag bindings directly attached to a GCP resource. + * Updates tag bindings directly attached to a GCP resource. Update_mask can be kept empty or "*". * @example * ```js * // Before running the sample: @@ -4288,23 +4292,23 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.locations.tagBindingCollections.update( - * { - * // Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "etag": "my_etag", - * // "fullResourceName": "my_fullResourceName", - * // "name": "my_name", - * // "tags": {} - * // } - * }, + * const res = await cloudresourcemanager.locations.tagBindingCollections.patch({ + * // Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', + * // Optional. An update mask to selectively update fields. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "fullResourceName": "my_fullResourceName", + * // "name": "my_name", + * // "tags": {} + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response @@ -4329,32 +4333,32 @@ export namespace cloudresourcemanager_v3 { * @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$Locations$Tagbindingcollections$Update, + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Locations$Tagbindingcollections$Update, + patch( + params?: Params$Resource$Locations$Tagbindingcollections$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Locations$Tagbindingcollections$Update, + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Locations$Tagbindingcollections$Update, + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Locations$Tagbindingcollections$Update, + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Locations$Tagbindingcollections$Update + | Params$Resource$Locations$Tagbindingcollections$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4370,12 +4374,12 @@ export namespace cloudresourcemanager_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Locations$Tagbindingcollections$Update; + {}) as Params$Resource$Locations$Tagbindingcollections$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Locations$Tagbindingcollections$Update; + params = {} as Params$Resource$Locations$Tagbindingcollections$Patch; options = {}; } @@ -4390,7 +4394,7 @@ export namespace cloudresourcemanager_v3 { options: Object.assign( { url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '', }, options @@ -4418,12 +4422,16 @@ export namespace cloudresourcemanager_v3 { */ name?: string; } - export interface Params$Resource$Locations$Tagbindingcollections$Update + export interface Params$Resource$Locations$Tagbindingcollections$Patch extends StandardParameters { /** * Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" */ name?: string; + /** + * Optional. An update mask to selectively update fields. + */ + updateMask?: string; /** * Request body metadata @@ -7693,6 +7701,7 @@ export namespace cloudresourcemanager_v3 { * requestBody: { * // request body parameters * // { + * // "allowedValuesRegex": "my_allowedValuesRegex", * // "createTime": "my_createTime", * // "description": "my_description", * // "etag": "my_etag", @@ -7993,6 +8002,7 @@ export namespace cloudresourcemanager_v3 { * * // Example response * // { + * // "allowedValuesRegex": "my_allowedValuesRegex", * // "createTime": "my_createTime", * // "description": "my_description", * // "etag": "my_etag", @@ -8291,6 +8301,7 @@ export namespace cloudresourcemanager_v3 { * * // Example response * // { + * // "allowedValuesRegex": "my_allowedValuesRegex", * // "createTime": "my_createTime", * // "description": "my_description", * // "etag": "my_etag", @@ -8584,6 +8595,7 @@ export namespace cloudresourcemanager_v3 { * requestBody: { * // request body parameters * // { + * // "allowedValuesRegex": "my_allowedValuesRegex", * // "createTime": "my_createTime", * // "description": "my_description", * // "etag": "my_etag", diff --git a/src/apis/datafusion/v1.ts b/src/apis/datafusion/v1.ts index be4179dd1f9..1750617f935 100644 --- a/src/apis/datafusion/v1.ts +++ b/src/apis/datafusion/v1.ts @@ -489,6 +489,10 @@ export namespace datafusion_v1 { * 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 e.g. when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * A resource that represents a Google Cloud location. @@ -976,7 +980,7 @@ export namespace datafusion_v1 { * * // Do the magic * const res = await datafusion.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -1104,7 +1108,7 @@ export namespace datafusion_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3616,13 +3620,16 @@ export namespace datafusion_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -3768,6 +3775,10 @@ export namespace datafusion_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Versions { diff --git a/src/apis/datafusion/v1beta1.ts b/src/apis/datafusion/v1beta1.ts index a4750fc9a3a..d58f9bffad2 100644 --- a/src/apis/datafusion/v1beta1.ts +++ b/src/apis/datafusion/v1beta1.ts @@ -515,6 +515,10 @@ export namespace datafusion_v1beta1 { * 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 e.g. when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * A resource that represents a Google Cloud location. @@ -1027,7 +1031,7 @@ export namespace datafusion_v1beta1 { * * // Do the magic * const res = await datafusion.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -1300,7 +1304,7 @@ export namespace datafusion_v1beta1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4650,13 +4654,16 @@ export namespace datafusion_v1beta1 { * 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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -4802,6 +4809,10 @@ export namespace datafusion_v1beta1 { * 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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Versions { diff --git a/src/apis/datamanager/README.md b/src/apis/datamanager/README.md index 7c9e3721191..294034cf21d 100644 --- a/src/apis/datamanager/README.md +++ b/src/apis/datamanager/README.md @@ -4,6 +4,15 @@ > A unified ingestion API for data partners, agencies and advertisers to connect first-party data across Google advertising products. +## 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-ads/datamanager](https://www.npmjs.com/package/@google-ads/datamanager) instead. +The [@google-ads/datamanager](https://www.npmjs.com/package/@google-ads/datamanager) 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/discoveryengine/v1.ts b/src/apis/discoveryengine/v1.ts index 9428efd0520..cf65e1aeed4 100644 --- a/src/apis/discoveryengine/v1.ts +++ b/src/apis/discoveryengine/v1.ts @@ -3130,6 +3130,10 @@ export namespace discoveryengine_v1 { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -3197,6 +3201,10 @@ export namespace discoveryengine_v1 { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1alphaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -3233,6 +3241,10 @@ export namespace discoveryengine_v1 { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -7638,6 +7650,10 @@ export namespace discoveryengine_v1 { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -7705,6 +7721,10 @@ export namespace discoveryengine_v1 { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1betaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1betaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -7741,6 +7761,10 @@ export namespace discoveryengine_v1 { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -11231,6 +11255,10 @@ export namespace discoveryengine_v1 { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -11311,6 +11339,10 @@ export namespace discoveryengine_v1 { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1EngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1CmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -11347,6 +11379,10 @@ export namespace discoveryengine_v1 { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -12139,6 +12175,19 @@ export namespace discoveryengine_v1 { */ subscriptionTier?: string | null; } + /** + * Stats about users' licenses. + */ + export interface Schema$GoogleCloudDiscoveryengineV1LicenseConfigUsageStats { + /** + * Required. The LicenseConfig name. + */ + licenseConfig?: string | null; + /** + * Required. The number of licenses used. + */ + usedLicenseCount?: string | null; + } /** * Response message for CmekConfigService.ListCmekConfigs method. */ @@ -12248,6 +12297,15 @@ export namespace discoveryengine_v1 { */ nextPageToken?: string | null; } + /** + * Response message for UserLicenseService.ListLicenseConfigUsageStats method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1ListLicenseConfigsUsageStatsResponse { + /** + * All the customer's LicenseConfigUsageStats. + */ + licenseConfigUsageStats?: Schema$GoogleCloudDiscoveryengineV1LicenseConfigUsageStats[]; + } /** * Response message for SchemaService.ListSchemas method. */ @@ -14586,6 +14644,481 @@ export namespace discoveryengine_v1 { */ name?: string | null; } + /** + * WidgetConfig captures configs at the Widget level. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfig { + /** + * Will be used for all widget access settings seen in cloud console integration page. Replaces top deprecated top level properties. + */ + accessSettings?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings; + /** + * Allowlisted domains that can load this widget. + */ + allowlistedDomains?: string[] | null; + /** + * Whether allow no-auth integration with widget. If set true, public access to search or other solutions from widget is allowed without authenication token provided by customer hosted backend server. + */ + allowPublicAccess?: boolean | null; + /** + * Optional. Output only. Describes the assistant settings of the widget. + */ + assistantSettings?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings; + /** + * Output only. Collection components that lists all collections and child data stores associated with the widget config, those data sources can be used for filtering in widget service APIs, users can return results that from selected data sources. + */ + collectionComponents?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent[]; + /** + * Output only. Unique obfuscated identifier of a WidgetConfig. + */ + configId?: string | null; + /** + * The content search spec that configs the desired behavior of content search. + */ + contentSearchSpec?: Schema$GoogleCloudDiscoveryengineV1SearchRequestContentSearchSpec; + /** + * Output only. Timestamp the WidgetConfig was created. + */ + createTime?: string | null; + /** + * Optional. Output only. Describes the customer related configurations, currently only used for government customers. This field cannot be modified after project onboarding. + */ + customerProvidedConfig?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig; + /** + * Output only. The type of the parent data store. + */ + dataStoreType?: string | null; + /** + * Configurable UI configurations per data store. + */ + dataStoreUiConfigs?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig[]; + /** + * The default ordering for search results if specified. Used to set SearchRequest#order_by on applicable requests. https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.dataStores.servingConfigs/search#request-body + */ + defaultSearchRequestOrderBy?: string | null; + /** + * Required. The human readable widget config display name. Used in Discovery UI. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. + */ + displayName?: string | null; + /** + * Whether or not to enable autocomplete. + */ + enableAutocomplete?: boolean | null; + /** + * Whether to allow conversational search (LLM, multi-turn) or not (non-LLM, single-turn). + */ + enableConversationalSearch?: boolean | null; + /** + * Optional. Output only. Whether to enable private knowledge graph. + */ + enablePrivateKnowledgeGraph?: boolean | null; + /** + * Turn on or off collecting the search result quality feedback from end users. + */ + enableQualityFeedback?: boolean | null; + /** + * Whether to show the result score. + */ + enableResultScore?: boolean | null; + /** + * Whether to enable safe search. + */ + enableSafeSearch?: boolean | null; + /** + * Whether to enable search-as-you-type behavior for the search widget + */ + enableSearchAsYouType?: boolean | null; + /** + * Turn on or off summary for each snippets result. + */ + enableSnippetResultSummary?: boolean | null; + /** + * Turn on or off summarization for the search response. + */ + enableSummarization?: boolean | null; + /** + * Whether to enable standalone web app. + */ + enableWebApp?: boolean | null; + /** + * The configuration and appearance of facets in the end user view. + */ + facetField?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigFacetField[]; + /** + * The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `url`, `custom1`, `custom2`, `custom3`. The value is the name of the field along with its device visibility. The 3 custom fields are optional and can be added or removed. `title`, `thumbnail`, `url` are required UI components that cannot be removed. + */ + fieldsUiComponentsMap?: { + [ + key: string + ]: Schema$GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField; + } | null; + /** + * Output only. Whether the subscription is gemini bundle or not. + */ + geminiBundle?: boolean | null; + /** + * Optional. Describes the homepage settings of the widget. + */ + homepageSetting?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting; + /** + * Output only. The industry vertical that the WidgetConfig registers. The WidgetConfig industry vertical is based on the associated Engine. + */ + industryVertical?: string | null; + /** + * Output only. Whether LLM is enabled in the corresponding data store. + */ + llmEnabled?: boolean | null; + /** + * Output only. Whether the customer accepted data use terms. + */ + minimumDataTermAccepted?: boolean | null; + /** + * Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + */ + name?: string | null; + /** + * The type of snippet to display in UCS widget. - RESULT_DISPLAY_TYPE_UNSPECIFIED for existing users. - SNIPPET for new non-enterprise search users. - EXTRACTIVE_ANSWER for new enterprise search users. + */ + resultDisplayType?: string | null; + /** + * Required. Immutable. Specifies the solution type that this WidgetConfig can be used for. + */ + solutionType?: string | null; + /** + * Describes search widget UI branding settings, such as the widget title, logo, favicons, and colors. + */ + uiBranding?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings; + /** + * Describes general widget search settings as seen in cloud console widget configuration page. Replaces top deprecated top level properties. + */ + uiSettings?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiSettings; + /** + * Output only. Timestamp the WidgetConfig was updated. + */ + updateTime?: string | null; + } + /** + * Describes widget access settings. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigAccessSettings { + /** + * List of domains that are allowed to integrate the search widget. + */ + allowlistedDomains?: string[] | null; + /** + * Whether public unauthenticated access is allowed. + */ + allowPublicAccess?: boolean | null; + /** + * Whether web app access is enabled. + */ + enableWebApp?: boolean | null; + /** + * Optional. Language code for user interface. Use language tags defined by [BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). If unset, the default language code is "en-US". + */ + languageCode?: string | null; + /** + * Optional. The workforce identity pool provider used to access the widget. + */ + workforceIdentityPoolProvider?: string | null; + } + /** + * Describes the assistant settings of the widget. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigAssistantSettings { + /** + * Output only. This field controls the default web grounding toggle for end users if `web_grounding_type` is set to `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`. By default, this field is set to false. If `web_grounding_type` is `WEB_GROUNDING_TYPE_GOOGLE_SEARCH` or `WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH`, end users will have web grounding enabled by default on UI. If true, grounding toggle will be disabled by default on UI. End users can still enable web grounding in the UI if web grounding is enabled. + */ + defaultWebGroundingToggleOff?: boolean | null; + /** + * Optional. Output only. Whether to disable user location context. + */ + disableLocationContext?: boolean | null; + /** + * Whether or not the Google search grounding toggle is shown. Deprecated. Use web_grounding_type instead. + */ + googleSearchGroundingEnabled?: boolean | null; + /** + * Optional. The type of web grounding to use. + */ + webGroundingType?: string | null; + } + /** + * Read-only collection component that contains data store collections fields that may be used for filtering + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigCollectionComponent { + /** + * Output only. The icon link of the connector source. + */ + connectorIconLink?: string | null; + /** + * The name of the data source, retrieved from `Collection.data_connector.data_source`. + */ + dataSource?: string | null; + /** + * Output only. The display name of the data source. + */ + dataSourceDisplayName?: string | null; + /** + * For the data store collection, list of the children data stores. + */ + dataStoreComponents?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent[]; + /** + * The display name of the collection. + */ + displayName?: string | null; + /** + * Output only. the identifier of the collection, used for widget service. For now it refers to collection_id, in the future we will migrate the field to encrypted collection name UUID. + */ + id?: string | null; + /** + * The name of the collection. It should be collection resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field. + */ + name?: string | null; + } + /** + * Customer provided configurations. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigCustomerProvidedConfig { + /** + * Customer type. + */ + customerType?: string | null; + } + /** + * Read-only data store component that contains data stores fields that may be used for filtering, it's the child of `CollectionComponent`. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigDataStoreComponent { + /** + * Output only. The type of the data store config. + */ + dataStoreConfigType?: string | null; + /** + * The display name of the data store. + */ + displayName?: string | null; + /** + * The name of the entity, retrieved from `Collection.data_connector.entities.entityName`. + */ + entityName?: string | null; + /** + * Output only. the identifier of the data store, used for widget service. For now it refers to data_store_id, in the future we will migrate the field to encrypted data store name UUID. + */ + id?: string | null; + /** + * The name of the data store. It should be data store resource name Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field. + */ + name?: string | null; + } + /** + * UI component configuration for data store. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig { + /** + * Facet fields that store the mapping of fields to end user widget appearance. + */ + facetField?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigFacetField[]; + /** + * The key is the UI component. Mock. Currently supported `title`, `thumbnail`, `url`, `custom1`, `custom2`, `custom3`. The value is the name of the field along with its device visibility. The 3 custom fields are optional and can be added or removed. `title`, `thumbnail`, `url` are required UI components that cannot be removed. + */ + fieldsUiComponentsMap?: { + [ + key: string + ]: Schema$GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField; + } | null; + /** + * Output only. the identifier of the data store, used for widget service. For now it refers to data_store_id, in the future we will migrate the field to encrypted data store name UUID. + */ + id?: string | null; + /** + * The name of the data store. It should be data store resource name Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}`. For APIs under WidgetService, such as WidgetService.LookUpWidgetConfig, the project number and location part is erased in this field. + */ + name?: string | null; + } + /** + * Facet fields that store the mapping of fields to end user widget appearance. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigFacetField { + /** + * Optional. The field name that end users will see. + */ + displayName?: string | null; + /** + * Required. Registered field name. The format is `field.abc`. + */ + field?: string | null; + } + /** + * Describes the homepage setting of the widget. It includes all homepage related settings and configurations, such as shortcuts. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigHomepageSetting { + /** + * Optional. The shortcuts to display on the homepage. + */ + shortcuts?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut[]; + } + /** + * Describes an entity of shortcut (aka pinned content) on the homepage. The home page will render these shortcuts in the same order as what the API returns. If a customer wants to reorder or remove a shortcut, the UI should always provide the new full list of shortcuts. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigHomepageSettingShortcut { + /** + * Optional. Destination URL of shortcut. + */ + destinationUri?: string | null; + /** + * Optional. Icon URL of shortcut. + */ + icon?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigImage; + /** + * Optional. Title of the shortcut. + */ + title?: string | null; + } + /** + * Options to store an image. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigImage { + /** + * Image URL. + */ + url?: string | null; + } + /** + * Describes widget UI branding settings. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiBrandingSettings { + /** + * Logo image. + */ + logo?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigImage; + } + /** + * Facet field that maps to a UI Component. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigUIComponentField { + /** + * The field visibility on different types of devices. + */ + deviceVisibility?: string[] | null; + /** + * The template to customize how the field is displayed. An example value would be a string that looks like: "Price: {value\}". + */ + displayTemplate?: string | null; + /** + * Required. Registered field name. The format is `field.abc`. + */ + field?: string | null; + } + /** + * Describes general widget (or web app) UI settings as seen in the cloud console UI configuration page. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiSettings { + /** + * Per data store configuration. + */ + dataStoreUiConfigs?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigDataStoreUiConfig[]; + /** + * The default ordering for search results if specified. Used to set SearchRequest#order_by on applicable requests. https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1alpha/projects.locations.dataStores.servingConfigs/search#request-body + */ + defaultSearchRequestOrderBy?: string | null; + /** + * If set to true, the widget will not collect user events. + */ + disableUserEventsCollection?: boolean | null; + /** + * Whether or not to enable autocomplete. + */ + enableAutocomplete?: boolean | null; + /** + * Optional. If set to true, the widget will enable the create agent button. + */ + enableCreateAgentButton?: boolean | null; + /** + * Optional. If set to true, the widget will enable people search. + */ + enablePeopleSearch?: boolean | null; + /** + * Turn on or off collecting the search result quality feedback from end users. + */ + enableQualityFeedback?: boolean | null; + /** + * Whether to enable safe search. + */ + enableSafeSearch?: boolean | null; + /** + * Whether to enable search-as-you-type behavior for the search widget. + */ + enableSearchAsYouType?: boolean | null; + /** + * If set to true, the widget will enable visual content summary on applicable search requests. Only used by healthcare search. + */ + 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` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` + */ + features?: {[key: string]: string} | null; + /** + * Describes generative answer configuration. + */ + generativeAnswerConfig?: Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig; + /** + * Describes widget (or web app) interaction type + */ + interactionType?: string | null; + /** + * Output only. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; + /** + * Controls whether result extract is display and how (snippet or extractive answer). Default to no result if unspecified. + */ + resultDescriptionType?: string | null; + } + /** + * Describes configuration for generative answer. + */ + export interface Schema$GoogleCloudDiscoveryengineV1WidgetConfigUiSettingsGenerativeAnswerConfig { + /** + * Whether generated answer contains suggested related questions. + */ + disableRelatedQuestions?: boolean | null; + /** + * Optional. Specifies whether to filter out queries that are adversarial. + */ + ignoreAdversarialQuery?: boolean | null; + /** + * Optional. Specifies whether to filter out queries that are not relevant to the content. + */ + ignoreLowRelevantContent?: boolean | null; + /** + * Optional. Specifies whether to filter out queries that are not answer-seeking. The default value is `false`. No answer is returned if the search query is classified as a non-answer seeking query. If this field is set to `true`, we skip generating answers for non-answer seeking queries and return fallback messages instead. + */ + ignoreNonAnswerSeekingQuery?: boolean | null; + /** + * Optional. Source of image returned in the answer. + */ + imageSource?: string | null; + /** + * Language code for Summary. Use language tags defined by [BCP47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). Note: This is an experimental feature. + */ + languageCode?: string | null; + /** + * Max rephrase steps. The max number is 5 steps. If not set or set to < 1, it will be set to 1 by default. + */ + maxRephraseSteps?: number | null; + /** + * Text at the beginning of the prompt that instructs the model that generates the answer. + */ + modelPromptPreamble?: string | null; + /** + * The model version used to generate the answer. + */ + modelVersion?: string | null; + /** + * The number of top results to generate the answer from. Up to 10. + */ + resultCount?: number | null; + } /** * Config to store data store type configuration for workspace data */ @@ -17987,6 +18520,7 @@ export namespace discoveryengine_v1 { siteSearchEngine: Resource$Projects$Locations$Collections$Datastores$Sitesearchengine; suggestionDenyListEntries: Resource$Projects$Locations$Collections$Datastores$Suggestiondenylistentries; userEvents: Resource$Projects$Locations$Collections$Datastores$Userevents; + widgetConfigs: Resource$Projects$Locations$Collections$Datastores$Widgetconfigs; constructor(context: APIRequestContext) { this.context = context; this.branches = @@ -18045,6 +18579,10 @@ export namespace discoveryengine_v1 { new Resource$Projects$Locations$Collections$Datastores$Userevents( this.context ); + this.widgetConfigs = + new Resource$Projects$Locations$Collections$Datastores$Widgetconfigs( + this.context + ); } /** @@ -33072,49 +33610,14 @@ export namespace discoveryengine_v1 { requestBody?: Schema$GoogleCloudDiscoveryengineV1UserEvent; } - export class Resource$Projects$Locations$Collections$Engines { + export class Resource$Projects$Locations$Collections$Datastores$Widgetconfigs { context: APIRequestContext; - assistants: Resource$Projects$Locations$Collections$Engines$Assistants; - completionConfig: Resource$Projects$Locations$Collections$Engines$Completionconfig; - controls: Resource$Projects$Locations$Collections$Engines$Controls; - conversations: Resource$Projects$Locations$Collections$Engines$Conversations; - operations: Resource$Projects$Locations$Collections$Engines$Operations; - servingConfigs: Resource$Projects$Locations$Collections$Engines$Servingconfigs; - sessions: Resource$Projects$Locations$Collections$Engines$Sessions; constructor(context: APIRequestContext) { this.context = context; - this.assistants = - new Resource$Projects$Locations$Collections$Engines$Assistants( - this.context - ); - this.completionConfig = - new Resource$Projects$Locations$Collections$Engines$Completionconfig( - this.context - ); - this.controls = - new Resource$Projects$Locations$Collections$Engines$Controls( - this.context - ); - this.conversations = - new Resource$Projects$Locations$Collections$Engines$Conversations( - this.context - ); - this.operations = - new Resource$Projects$Locations$Collections$Engines$Operations( - this.context - ); - this.servingConfigs = - new Resource$Projects$Locations$Collections$Engines$Servingconfigs( - this.context - ); - this.sessions = - new Resource$Projects$Locations$Collections$Engines$Sessions( - this.context - ); } /** - * Creates a Engine. + * Gets a WidgetConfig. * @example * ```js * // Before running the sample: @@ -33137,6 +33640,7 @@ 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', * ], * }); @@ -33147,45 +33651,57 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.create({ - * // Required. The ID to use for the Engine, which will become the final component of the Engine's resource name. 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. - * engineId: 'placeholder-value', - * // Required. The parent resource name, such as `projects/{project\}/locations/{location\}/collections/{collection\}`. - * parent: - * 'projects/my-project/locations/my-location/collections/my-collection', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "appType": "my_appType", - * // "chatEngineConfig": {}, - * // "chatEngineMetadata": {}, - * // "commonConfig": {}, - * // "configurableBillingApproach": "my_configurableBillingApproach", - * // "createTime": "my_createTime", - * // "dataStoreIds": [], - * // "disableAnalytics": false, - * // "displayName": "my_displayName", - * // "features": {}, - * // "industryVertical": "my_industryVertical", - * // "mediaRecommendationEngineConfig": {}, - * // "name": "my_name", - * // "searchEngineConfig": {}, - * // "solutionType": "my_solutionType", - * // "updateTime": "my_updateTime" - * // } + * await discoveryengine.projects.locations.collections.dataStores.widgetConfigs.get( + * { + * // Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. + * acceptCache: 'placeholder-value', + * // Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. + * 'getWidgetConfigRequestOption.turnOffCollectionComponents': + * 'placeholder-value', + * // Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/widgetConfigs/my-widgetConfig', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, * // "name": "my_name", - * // "response": {} + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -33201,58 +33717,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. */ - create( - params: Params$Resource$Projects$Locations$Collections$Engines$Create, + get( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Collections$Engines$Create, + get( + params?: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Collections$Engines$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Collections$Engines$Create, + get( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Collections$Engines$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - create( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$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$Collections$Engines$Create; + {}) as Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Create; + {} as Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Get; options = {}; } @@ -33266,32 +33786,31 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/engines').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 Engine. + * Update a WidgetConfig. * @example * ```js * // Before running the sample: @@ -33314,6 +33833,7 @@ 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', * ], * }); @@ -33324,19 +33844,97 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.delete({ - * // Required. Full resource name of Engine, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/engines/{engine_id\}`. If the caller does not have permission to delete the Engine, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the Engine to delete does not exist, a NOT_FOUND error is returned. - * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine', - * }); + * await discoveryengine.projects.locations.collections.dataStores.widgetConfigs.patch( + * { + * // Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + * name: 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/widgetConfigs/my-widgetConfig', + * // Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, * // "name": "my_name", - * // "response": {} + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -33352,58 +33950,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. */ - delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + patch( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Collections$Engines$Delete, + patch( + params?: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + patch( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + patch( + callback: BodyResponseCallback ): void; - delete( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch + | 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$Collections$Engines$Delete; + {}) as Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Delete; + {} as Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch; options = {}; } @@ -33418,7 +34020,7 @@ export namespace discoveryengine_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -33429,17 +34031,425 @@ export namespace discoveryengine_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$Collections$Datastores$Widgetconfigs$Get + extends StandardParameters { /** - * Gets a Engine. + * Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. + */ + acceptCache?: boolean; + /** + * Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. + */ + 'getWidgetConfigRequestOption.turnOffCollectionComponents'?: boolean; + /** + * Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Collections$Datastores$Widgetconfigs$Patch + extends StandardParameters { + /** + * Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + */ + name?: string; + /** + * Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1WidgetConfig; + } + + export class Resource$Projects$Locations$Collections$Engines { + context: APIRequestContext; + assistants: Resource$Projects$Locations$Collections$Engines$Assistants; + completionConfig: Resource$Projects$Locations$Collections$Engines$Completionconfig; + controls: Resource$Projects$Locations$Collections$Engines$Controls; + conversations: Resource$Projects$Locations$Collections$Engines$Conversations; + operations: Resource$Projects$Locations$Collections$Engines$Operations; + servingConfigs: Resource$Projects$Locations$Collections$Engines$Servingconfigs; + sessions: Resource$Projects$Locations$Collections$Engines$Sessions; + widgetConfigs: Resource$Projects$Locations$Collections$Engines$Widgetconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.assistants = + new Resource$Projects$Locations$Collections$Engines$Assistants( + this.context + ); + this.completionConfig = + new Resource$Projects$Locations$Collections$Engines$Completionconfig( + this.context + ); + this.controls = + new Resource$Projects$Locations$Collections$Engines$Controls( + this.context + ); + this.conversations = + new Resource$Projects$Locations$Collections$Engines$Conversations( + this.context + ); + this.operations = + new Resource$Projects$Locations$Collections$Engines$Operations( + this.context + ); + this.servingConfigs = + new Resource$Projects$Locations$Collections$Engines$Servingconfigs( + this.context + ); + this.sessions = + new Resource$Projects$Locations$Collections$Engines$Sessions( + this.context + ); + this.widgetConfigs = + new Resource$Projects$Locations$Collections$Engines$Widgetconfigs( + this.context + ); + } + + /** + * Creates a Engine. + * @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.collections.engines.create({ + * // Required. The ID to use for the Engine, which will become the final component of the Engine's resource name. 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. + * engineId: 'placeholder-value', + * // Required. The parent resource name, such as `projects/{project\}/locations/{location\}/collections/{collection\}`. + * parent: + * 'projects/my-project/locations/my-location/collections/my-collection', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "appType": "my_appType", + * // "chatEngineConfig": {}, + * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, + * // "commonConfig": {}, + * // "configurableBillingApproach": "my_configurableBillingApproach", + * // "createTime": "my_createTime", + * // "dataStoreIds": [], + * // "disableAnalytics": false, + * // "displayName": "my_displayName", + * // "features": {}, + * // "industryVertical": "my_industryVertical", + * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, + * // "name": "my_name", + * // "searchEngineConfig": {}, + * // "solutionType": "my_solutionType", + * // "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$Collections$Engines$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Collections$Engines$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Collections$Engines$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Collections$Engines$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Collections$Engines$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Create; + 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}/engines').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 Engine. + * @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.collections.engines.delete({ + * // Required. Full resource name of Engine, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/engines/{engine_id\}`. If the caller does not have permission to delete the Engine, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the Engine to delete does not exist, a NOT_FOUND error is returned. + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine', + * }); + * 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$Collections$Engines$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Collections$Engines$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Collections$Engines$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Delete; + 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}').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 Engine. * @example * ```js * // Before running the sample: @@ -33482,6 +34492,7 @@ export namespace discoveryengine_v1 { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33491,6 +34502,7 @@ export namespace discoveryengine_v1 { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -33811,6 +34823,7 @@ export namespace discoveryengine_v1 { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33820,6 +34833,7 @@ export namespace discoveryengine_v1 { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -33834,6 +34848,7 @@ export namespace discoveryengine_v1 { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33843,6 +34858,7 @@ export namespace discoveryengine_v1 { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -39900,6 +40916,471 @@ export namespace discoveryengine_v1 { name?: string; } + export class Resource$Projects$Locations$Collections$Engines$Widgetconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets a WidgetConfig. + * @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.collections.engines.widgetConfigs.get( + * { + * // Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. + * acceptCache: 'placeholder-value', + * // Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. + * 'getWidgetConfigRequestOption.turnOffCollectionComponents': + * 'placeholder-value', + * // Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/widgetConfigs/my-widgetConfig', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "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$Collections$Engines$Widgetconfigs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Get; + 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}').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 + ); + } + } + + /** + * Update a WidgetConfig. + * @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.collections.engines.widgetConfigs.patch( + * { + * // Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/widgetConfigs/my-widgetConfig', + * // Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "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$Collections$Engines$Widgetconfigs$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch; + 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}').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$Collections$Engines$Widgetconfigs$Get + extends StandardParameters { + /** + * Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. + */ + acceptCache?: boolean; + /** + * Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. + */ + 'getWidgetConfigRequestOption.turnOffCollectionComponents'?: boolean; + /** + * Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Collections$Engines$Widgetconfigs$Patch + extends StandardParameters { + /** + * Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + */ + name?: string; + /** + * Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1WidgetConfig; + } + export class Resource$Projects$Locations$Collections$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -40264,6 +41745,7 @@ export namespace discoveryengine_v1 { siteSearchEngine: Resource$Projects$Locations$Datastores$Sitesearchengine; suggestionDenyListEntries: Resource$Projects$Locations$Datastores$Suggestiondenylistentries; userEvents: Resource$Projects$Locations$Datastores$Userevents; + widgetConfigs: Resource$Projects$Locations$Datastores$Widgetconfigs; constructor(context: APIRequestContext) { this.context = context; this.branches = new Resource$Projects$Locations$Datastores$Branches( @@ -40307,6 +41789,8 @@ export namespace discoveryengine_v1 { this.userEvents = new Resource$Projects$Locations$Datastores$Userevents( this.context ); + this.widgetConfigs = + new Resource$Projects$Locations$Datastores$Widgetconfigs(this.context); } /** @@ -53241,39 +54725,517 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.dataStores.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/dataStores/my-dataStore', - * // If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. - * writeAsync: 'placeholder-value', + * await discoveryengine.projects.locations.dataStores.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/dataStores/my-dataStore', + * // 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$Datastores$Userevents$Write, + options: StreamMethodOptions + ): Promise>; + write( + params?: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + write( + params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + callback: BodyResponseCallback + ): void; + write( + callback: BodyResponseCallback + ): void; + write( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datastores$Userevents$Write + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datastores$Userevents$Write; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datastores$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$Datastores$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$Datastores$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$Datastores$Userevents$Purge + extends StandardParameters { + /** + * Required. The resource name of the catalog under which the events are created. The format is `projects/{project\}/locations/global/collections/{collection\}/dataStores/{dataStore\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1PurgeUserEventsRequest; + } + export interface Params$Resource$Projects$Locations$Datastores$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$Datastores$Widgetconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets a WidgetConfig. + * @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.dataStores.widgetConfigs.get({ + * // Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. + * acceptCache: 'placeholder-value', + * // Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. + * 'getWidgetConfigRequestOption.turnOffCollectionComponents': + * 'placeholder-value', + * // Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` + * name: 'projects/my-project/locations/my-location/dataStores/my-dataStore/widgetConfigs/my-widgetConfig', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "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$Datastores$Widgetconfigs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get; + 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}').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 + ); + } + } + + /** + * Update a WidgetConfig. + * @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.dataStores.widgetConfigs.patch({ + * // Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. + * name: 'projects/my-project/locations/my-location/dataStores/my-dataStore/widgetConfigs/my-widgetConfig', + * // Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. + * updateMask: '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" + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -53281,28 +55243,42 @@ export namespace discoveryengine_v1 { * * // 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" + * // "accessSettings": {}, + * // "allowPublicAccess": false, + * // "allowlistedDomains": [], + * // "assistantSettings": {}, + * // "collectionComponents": [], + * // "configId": "my_configId", + * // "contentSearchSpec": {}, + * // "createTime": "my_createTime", + * // "customerProvidedConfig": {}, + * // "dataStoreType": "my_dataStoreType", + * // "dataStoreUiConfigs": [], + * // "defaultSearchRequestOrderBy": "my_defaultSearchRequestOrderBy", + * // "displayName": "my_displayName", + * // "enableAutocomplete": false, + * // "enableConversationalSearch": false, + * // "enablePrivateKnowledgeGraph": false, + * // "enableQualityFeedback": false, + * // "enableResultScore": false, + * // "enableSafeSearch": false, + * // "enableSearchAsYouType": false, + * // "enableSnippetResultSummary": false, + * // "enableSummarization": false, + * // "enableWebApp": false, + * // "facetField": [], + * // "fieldsUiComponentsMap": {}, + * // "geminiBundle": false, + * // "homepageSetting": {}, + * // "industryVertical": "my_industryVertical", + * // "llmEnabled": false, + * // "minimumDataTermAccepted": false, + * // "name": "my_name", + * // "resultDisplayType": "my_resultDisplayType", + * // "solutionType": "my_solutionType", + * // "uiBranding": {}, + * // "uiSettings": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -53318,62 +55294,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. */ - write( - params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + patch( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch, options: StreamMethodOptions ): Promise>; - write( - params?: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + patch( + params?: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - write( - params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + patch( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, + patch( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Datastores$Userevents$Write, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch, + callback: BodyResponseCallback ): void; - write( - callback: BodyResponseCallback + patch( + callback: BodyResponseCallback ): void; - write( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Datastores$Userevents$Write - | BodyResponseCallback + | Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch + | 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$Datastores$Userevents$Write; + {}) as Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Datastores$Userevents$Write; + {} as Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch; options = {}; } @@ -53387,91 +55363,60 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/userEvents:write').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( + return createAPIRequest( parameters ); } } } - export interface Params$Resource$Projects$Locations$Datastores$Userevents$Collect + export interface Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Get 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. + * Optional. Whether it's acceptable to load the widget config from cache. If set to true, recent changes on widget configs may take a few minutes to reflect on the end user's view. It's recommended to set to true for maturely developed widgets, as it improves widget performance. Set to false to see changes reflected in prod right away, if your widget is under development. */ - ets?: string; + acceptCache?: boolean; /** - * 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\}`. + * Optional. Whether to turn off collection_components in WidgetConfig to reduce latency and data transmission. */ - 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; + 'getWidgetConfigRequestOption.turnOffCollectionComponents'?: boolean; /** - * Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters. + * Required. Full WidgetConfig resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}` */ - userEvent?: string; - } - export interface Params$Resource$Projects$Locations$Datastores$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$Datastores$Userevents$Purge - extends StandardParameters { - /** - * Required. The resource name of the catalog under which the events are created. The format is `projects/{project\}/locations/global/collections/{collection\}/dataStores/{dataStore\}`. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1PurgeUserEventsRequest; + name?: string; } - export interface Params$Resource$Projects$Locations$Datastores$Userevents$Write + export interface Params$Resource$Projects$Locations$Datastores$Widgetconfigs$Patch 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\}`. + * Immutable. The full resource name of the widget config. Format: `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataStores/{data_store_id\}/widgetConfigs/{widget_config_id\}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. */ - parent?: string; + name?: string; /** - * If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. + * Indicates which fields in the provided WidgetConfig to update. The following are the only supported fields: * WidgetConfig.enable_autocomplete If not set, all supported fields are updated. */ - writeAsync?: boolean; + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1UserEvent; + requestBody?: Schema$GoogleCloudDiscoveryengineV1WidgetConfig; } export class Resource$Projects$Locations$Groundingconfigs { @@ -57066,9 +59011,14 @@ export namespace discoveryengine_v1 { 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); } @@ -57929,6 +59879,177 @@ export namespace discoveryengine_v1 { requestBody?: Schema$GoogleCloudDiscoveryengineV1UserStore; } + export class Resource$Projects$Locations$Userstores$Licenseconfigsusagestats { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all the LicenseConfigUsageStatss associated with the project. + * @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.licenseConfigsUsageStats.list( + * { + * // Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + * parent: + * 'projects/my-project/locations/my-location/userStores/my-userStore', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "licenseConfigUsageStats": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `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$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + 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}/licenseConfigsUsageStats').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$Userstores$Licenseconfigsusagestats$List + extends StandardParameters { + /** + * Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + */ + parent?: string; + } + export class Resource$Projects$Locations$Userstores$Userlicenses { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -57970,7 +60091,7 @@ export namespace discoveryengine_v1 { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * // Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. * filter: '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', @@ -58100,7 +60221,7 @@ export namespace discoveryengine_v1 { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. */ filter?: string; /** diff --git a/src/apis/discoveryengine/v1alpha.ts b/src/apis/discoveryengine/v1alpha.ts index 401c431ccd5..0c7eae9107d 100644 --- a/src/apis/discoveryengine/v1alpha.ts +++ b/src/apis/discoveryengine/v1alpha.ts @@ -1304,6 +1304,10 @@ export namespace discoveryengine_v1alpha { * Output only. The reason why the agent was rejected. Only set if the state is PRIVATE, and got there via rejection. */ rejectionReason?: string | null; + /** + * Optional. The sharing config of the agent. + */ + sharingConfig?: Schema$GoogleCloudDiscoveryengineV1alphaAgentSharingConfig; /** * Optional. The starter prompt suggestions to show the user on the landing page of the agent. */ @@ -1351,6 +1355,15 @@ export namespace discoveryengine_v1alpha { */ uri?: string | null; } + /** + * Sharing related configuration. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentSharingConfig { + /** + * Optional. The sharing scope of the agent. + */ + scope?: string | null; + } /** * The starter prompt suggestion to show the user on the landing page of the agent. */ @@ -1360,6 +1373,113 @@ export namespace discoveryengine_v1alpha { */ text?: string | null; } + /** + * The data for displaying an Agent. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentView { + /** + * Immutable. The origin of the Agent. + */ + agentOrigin?: string | null; + /** + * Output only. The sharing state of the agent. + */ + agentSharingState?: string | null; + /** + * Output only. The type of the agent. + */ + agentType?: string | null; + /** + * The custom placeholder text that appears in the text box before the user enters any text. + */ + customPlaceholderText?: string | null; + /** + * The reason why the agent deployment failed. Only set if the state is DEPLOYMENT_FAILED. + */ + deploymentFailureReason?: string | null; + /** + * Required. Human-readable description of the agent. This might be used by an LLM to automatically select an agent to respond to a user query and to generate the first version of the steps for the agent that can be modified by the user. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled. + */ + description?: string | null; + /** + * Required. Display name of the agent. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled. + */ + displayName?: string | null; + /** + * Optional. The icon that represents the agent on the UI. + */ + icon?: Schema$GoogleCloudDiscoveryengineV1alphaAgentImage; + /** + * Resource name of the agent. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + */ + name?: string | null; + /** + * The reason why the agent was rejected. Only set if the state is PRIVATE, and got there via rejection. + */ + rejectionReason?: string | null; + /** + * Output only. The state of the Agent. + */ + state?: string | null; + /** + * Optional. The suggested prompts for the agent, to be shown on the agent landing page. + */ + suggestedPrompts?: Schema$GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt[]; + /** + * The reason why the agent was suspended. Only set if the state is SUSPENDED. + */ + suspensionReason?: string | null; + /** + * Optional. Per-user annotations of the current caller for the agent. + */ + userAnnotations?: Schema$GoogleCloudDiscoveryengineV1alphaUserAnnotations; + /** + * The permissions of the user for this Agent. + */ + userPermissions?: Schema$GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions; + } + /** + * A suggested prompt for the agent, to be shown on the agent landing page. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt { + /** + * Required. The text of the suggested prompt. The language of this is either Agent.language_code, or ListAvailableAgentViewsRequest.language_code if translations are enabled. + */ + text?: string | null; + } + /** + * The permissions of the user on an Agent. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions { + /** + * If the user can delete this Agent. + */ + canDelete?: boolean | null; + /** + * If the user can edit this Agent. + */ + canEdit?: boolean | null; + /** + * If the user can propose other users to share the Agent with. + */ + canProposeUsers?: boolean | null; + /** + * If the user can request a review for this Agent. + */ + canRequestReview?: boolean | null; + /** + * If the user can run this Agent. + */ + canRun?: boolean | null; + /** + * If the user can view the source of this Agent. + */ + canView?: boolean | null; + /** + * If the user can withdraw this Agent. + */ + canWithdraw?: boolean | null; + } /** * The connector level alert config. */ @@ -5225,6 +5345,10 @@ export namespace discoveryengine_v1alpha { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -5314,6 +5438,10 @@ export namespace discoveryengine_v1alpha { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1alphaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -5350,6 +5478,10 @@ export namespace discoveryengine_v1alpha { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -5978,6 +6110,15 @@ export namespace discoveryengine_v1alpha { */ inputUris?: string[] | null; } + /** + * Response message for the AgentService.GetAgentView method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaGetAgentViewResponse { + /** + * The data for displaying an Agent. + */ + agentView?: Schema$GoogleCloudDiscoveryengineV1alphaAgentView; + } /** * Response message for DataConnectorService.GetConnectorSecret. */ @@ -6700,6 +6841,19 @@ export namespace discoveryengine_v1alpha { */ subscriptionTier?: string | null; } + /** + * Stats about users' licenses. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats { + /** + * Required. The LicenseConfig name. + */ + licenseConfig?: string | null; + /** + * Required. The number of licenses used. + */ + usedLicenseCount?: string | null; + } /** * Response message for the AgentService.ListAgents method. */ @@ -6726,6 +6880,19 @@ export namespace discoveryengine_v1alpha { */ nextPageToken?: string | null; } + /** + * Response message for the AgentService.ListAvailableAgentViews method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaListAvailableAgentViewsResponse { + /** + * The agent sources visible to the caller under the parent Assistant. + */ + agentViews?: Schema$GoogleCloudDiscoveryengineV1alphaAgentView[]; + /** + * A token that can be sent as ListAvailableAgentViewsRequest.page_token to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } /** * Response message for LicenseConfigService.ListBillingAccountLicenseConfigs method. */ @@ -6961,6 +7128,15 @@ export namespace discoveryengine_v1alpha { */ nextPageToken?: string | null; } + /** + * Response message for UserLicenseService.ListLicenseConfigUsageStats method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaListLicenseConfigsUsageStatsResponse { + /** + * All the customer's LicenseConfigUsageStats. + */ + licenseConfigUsageStats?: Schema$GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats[]; + } /** * Response message for SampleQueryService.ListSampleQueries method. */ @@ -10311,6 +10487,19 @@ export namespace discoveryengine_v1alpha { */ mediaResponseInfo?: Schema$ApiservingMediaResponseInfo; } + /** + * Per-user annotations for an Agent, based on UserAnnotation. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaUserAnnotations { + /** + * Optional. Whether the agent is pinned, pinned agent will be displayed on the top of the agent list. + */ + pinned?: boolean | null; + /** + * Optional. Whether the agent has been viewed by the user. + */ + viewed?: boolean | null; + } /** * UserEvent captures all metadata information Discovery Engine API needs to know about how end users interact with your website. */ @@ -10947,6 +11136,10 @@ export namespace discoveryengine_v1alpha { * Describes widget (or web app) interaction type */ interactionType?: string | null; + /** + * Output only. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Controls whether result extract is display and how (snippet or extractive answer). Default to no result if unspecified. */ @@ -12004,6 +12197,10 @@ export namespace discoveryengine_v1alpha { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -12071,6 +12268,10 @@ export namespace discoveryengine_v1alpha { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1betaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1betaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -12107,6 +12308,10 @@ export namespace discoveryengine_v1alpha { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -14816,6 +15021,10 @@ export namespace discoveryengine_v1alpha { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -14883,6 +15092,10 @@ export namespace discoveryengine_v1alpha { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1EngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1CmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -14919,6 +15132,10 @@ export namespace discoveryengine_v1alpha { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -16730,6 +16947,49 @@ export namespace discoveryengine_v1alpha { */ videoId?: string | null; } + /** + * Associates `members`, or principals, with a `role`. + */ + export interface Schema$GoogleIamV1Binding { + /** + * The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + condition?: Schema$GoogleTypeExpr; + /** + * Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid\}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid\}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid\}.svc.id.goog[{namespace\}/{kubernetes-sa\}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid\}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain\}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/group/{group_id\}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/x`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/group/{group_id\}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/x`: All identities in a workload identity pool. * `deleted:user:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid\}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid\}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid\}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. + */ + members?: string[] | null; + /** + * Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles). + */ + role?: 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/). + */ + export interface Schema$GoogleIamV1Policy { + /** + * Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`. + */ + bindings?: Schema$GoogleIamV1Binding[]; + /** + * `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. + */ + etag?: string | null; + /** + * Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + version?: number | null; + } + /** + * Request message for `SetIamPolicy` method. + */ + export interface Schema$GoogleIamV1SetIamPolicyRequest { + /** + * REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them. + */ + policy?: Schema$GoogleIamV1Policy; + } /** * The request message for Operations.CancelOperation. */ @@ -41967,6 +42227,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -41976,6 +42237,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -42290,6 +42552,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -42299,6 +42562,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -42776,6 +43040,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -42785,6 +43050,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -42801,6 +43067,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -42810,6 +43077,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -42974,6 +43242,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -42983,6 +43252,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -43150,6 +43420,7 @@ export namespace discoveryengine_v1alpha { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -43159,6 +43430,7 @@ export namespace discoveryengine_v1alpha { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, @@ -43898,6 +44170,177 @@ export namespace discoveryengine_v1alpha { } } + /** + * Lists the data for displaying the Agents under an Assistant which are available to the caller. + * @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.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.collections.engines.assistants.listAvailableAgentViews( + * { + * // Optional. The origin of the Agent. + * agentOrigin: 'placeholder-value', + * // Optional. The filter syntax consists of an expression language for constructing a predicate from one or more fields of the files being filtered. Filter expression is case-sensitive. Allowed fields are: * `display_name` * `state` Some examples of filters would be: * `display_name = 'agent_1'` * `display_name = 'agent_1' AND state = ENABLED` For a full description of the filter format, please see https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentViews in the response should be translated to this language. + * languageCode: 'placeholder-value', + * // Optional. The maximum number of suggested prompts to return per agent. + * maxSuggestedPrompts: 'placeholder-value', + * // Optional. Maximum number of AgentViewss to return. If unspecified, defaults to 100. The maximum allowed value is 1000; anything above that will be coerced down to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token ListAvailableAgentViewsResponse.next_page_token, received from a previous AgentService.ListAvailableAgentViews call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAvailableAgentViews must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` + * parent: + * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant', + * // Optional. The field to sort by. Can have the following values: - display-name: The display name of the agent. - description: The description of the agent. - create-time: The creation time of the agent. - state: The state of the agent. + * sortBy: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "agentViews": [], + * // "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. + */ + listAvailableAgentViews( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews, + options: StreamMethodOptions + ): Promise>; + listAvailableAgentViews( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listAvailableAgentViews( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAvailableAgentViews( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAvailableAgentViews( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews, + callback: BodyResponseCallback + ): void; + listAvailableAgentViews( + callback: BodyResponseCallback + ): void; + listAvailableAgentViews( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews; + 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}:listAvailableAgentViews' + ).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 + ); + } + } + /** * Updates an Assistant * @example @@ -44247,6 +44690,41 @@ export namespace discoveryengine_v1alpha { */ name?: string; } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Listavailableagentviews + extends StandardParameters { + /** + * Optional. The origin of the Agent. + */ + agentOrigin?: string; + /** + * Optional. The filter syntax consists of an expression language for constructing a predicate from one or more fields of the files being filtered. Filter expression is case-sensitive. Allowed fields are: * `display_name` * `state` Some examples of filters would be: * `display_name = 'agent_1'` * `display_name = 'agent_1' AND state = ENABLED` For a full description of the filter format, please see https://google.aip.dev/160. + */ + filter?: string; + /** + * Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentViews in the response should be translated to this language. + */ + languageCode?: string; + /** + * Optional. The maximum number of suggested prompts to return per agent. + */ + maxSuggestedPrompts?: number; + /** + * Optional. Maximum number of AgentViewss to return. If unspecified, defaults to 100. The maximum allowed value is 1000; anything above that will be coerced down to 1000. + */ + pageSize?: number; + /** + * Optional. A page token ListAvailableAgentViewsResponse.next_page_token, received from a previous AgentService.ListAvailableAgentViews call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAvailableAgentViews must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` + */ + parent?: string; + /** + * Optional. The field to sort by. Can have the following values: - display-name: The display name of the agent. - description: The description of the agent. - create-time: The creation time of the agent. - state: The state of the agent. + */ + sortBy?: string; + } export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Patch extends StandardParameters { /** @@ -44345,6 +44823,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "name": "my_name", * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, * // "starterPrompts": [], * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", @@ -44370,6 +44849,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "name": "my_name", * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, * // "starterPrompts": [], * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", @@ -44636,7 +45116,7 @@ export namespace discoveryengine_v1alpha { } /** - * Gets an Agent. + * Disables an Agent. The `state` of the Agent becomes `DISABLED`. Can be called on an Agent in the state `ENABLED` or`SUSPENDED`, otherwise it returns an error. * @example * ```js * // Before running the sample: @@ -44670,9 +45150,9 @@ export namespace discoveryengine_v1alpha { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.get( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.disableAgent( * { - * // Required. Resource name of Agent. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + * // Required. The name of the Agent to disable. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', * }, * ); @@ -44693,6 +45173,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "name": "my_name", * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, * // "starterPrompts": [], * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", @@ -44712,38 +45193,38 @@ export namespace discoveryengine_v1alpha { * @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$Get, + disableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + disableAgent( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + disableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + disableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + disableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent, callback: BodyResponseCallback ): void; - get( + disableAgent( callback: BodyResponseCallback ): void; - get( + disableAgent( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -44761,13 +45242,13 @@ export namespace discoveryengine_v1alpha { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent; options = {}; } @@ -44781,8 +45262,11 @@ export namespace discoveryengine_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1alpha/{+name}:disableAgent').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options @@ -44805,7 +45289,7 @@ export namespace discoveryengine_v1alpha { } /** - * Lists all Agents under an Assistant which were created by the caller. + * Enables an Agent. The `state` of the Agent becomes `ENABLED`. Can be called on an Agent in the state `DISABLED` or 'SUSPENDED', otherwise it returns an error. * @example * ```js * // Before running the sample: @@ -44839,25 +45323,34 @@ export namespace discoveryengine_v1alpha { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.list( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.enableAgent( * { - * // 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. - * pageSize: 'placeholder-value', - * // Optional. A page token ListAgentsResponse.next_page_token, received from a previous AgentService.ListAgents call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAgents must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` - * parent: - * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant', + * // Required. The name of the Agent to enable. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', * }, * ); * console.log(res.data); * * // Example response * // { - * // "agents": [], - * // "nextPageToken": "my_nextPageToken" + * // "a2aAgentDefinition": {}, + * // "adkAgentDefinition": {}, + * // "authorizationConfig": {}, + * // "createTime": "my_createTime", + * // "customPlaceholderText": "my_customPlaceholderText", + * // "deploymentFailureReason": "my_deploymentFailureReason", + * // "description": "my_description", + * // "dialogflowAgentDefinition": {}, + * // "displayName": "my_displayName", + * // "icon": {}, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, + * // "starterPrompts": [], + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "updateTime": "my_updateTime" * // } * } * @@ -44873,62 +45366,62 @@ export namespace discoveryengine_v1alpha { * @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$Collections$Engines$Assistants$Agents$List, + enableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + enableAgent( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + enableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + enableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, - callback: BodyResponseCallback + enableAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + enableAgent( + callback: BodyResponseCallback ): void; - list( + enableAgent( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent + | 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$Collections$Engines$Assistants$Agents$List; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent; options = {}; } @@ -44942,34 +45435,681 @@ export namespace discoveryengine_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/agents').replace( + url: (rootUrl + '/v1alpha/{+name}:enableAgent').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 an 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('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.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.collections.engines.assistants.agents.get( + * { + * // Required. Resource name of Agent. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "a2aAgentDefinition": {}, + * // "adkAgentDefinition": {}, + * // "authorizationConfig": {}, + * // "createTime": "my_createTime", + * // "customPlaceholderText": "my_customPlaceholderText", + * // "deploymentFailureReason": "my_deploymentFailureReason", + * // "description": "my_description", + * // "dialogflowAgentDefinition": {}, + * // "displayName": "my_displayName", + * // "icon": {}, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, + * // "starterPrompts": [], + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "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$Collections$Engines$Assistants$Agents$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get; + 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: '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 ); } } /** - * Updates an Agent + * Returns a AgentView for a given Agent, which contains additional information about 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('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.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.collections.engines.assistants.agents.getAgentView( + * { + * // Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentView in the response should be translated to this language. + * languageCode: 'placeholder-value', + * // Optional. The maximum number of suggested prompts to return per agent. + * maxSuggestedPrompts: 'placeholder-value', + * // Required. The name of the Agent to get. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "agentView": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getAgentView( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview, + options: StreamMethodOptions + ): Promise>; + getAgentView( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getAgentView( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAgentView( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAgentView( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview, + callback: BodyResponseCallback + ): void; + getAgentView( + callback: BodyResponseCallback + ): void; + getAgentView( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview; + 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}:getAgentView').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 an agent 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. + * @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.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.collections.engines.assistants.agents.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/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * }, + * ); + * 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. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy + | 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$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+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 all Agents under an Assistant which were created by the caller. + * @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.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.collections.engines.assistants.agents.list( + * { + * // 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. + * pageSize: 'placeholder-value', + * // Optional. A page token ListAgentsResponse.next_page_token, received from a previous AgentService.ListAgents call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAgents must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` + * parent: + * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant', + * }, + * ); + * 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$Collections$Engines$Assistants$Agents$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List; + 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}/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 + ); + } + } + + /** + * Updates an Agent * @example * ```js * // Before running the sample: @@ -45027,6 +46167,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "name": "my_name", * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, * // "starterPrompts": [], * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", @@ -45052,6 +46193,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "name": "my_name", * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, * // "starterPrompts": [], * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", @@ -45162,6 +46304,340 @@ export namespace discoveryengine_v1alpha { ); } } + + /** + * Sets the access control policy for an agent resource. A `NOT_FOUND` error is returned if the resource does not exist. Policy can only contain `roles/discoveryengine.agentUser`, `roles/discoveryengine.agentViewer` and `roles/discoveryengine.agentEditor` roles. + * @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.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.collections.engines.assistants.agents.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/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * + * // 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$Collections$Engines$Assistants$Agents$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy + | 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$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+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); + } + } + + /** + * Suspends an Agent. It is still available for viewing but not for use. The `state` of the Agent becomes `SUSPENDED`. Can be called on an Agent in the state `ENABLED`, otherwise it returns an error. + * @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.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.collections.engines.assistants.agents.suspendAgent( + * { + * // Required. The name of the Agent to suspend. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * // Required. The reason for suspending the Agent. This will be shown to the users of the Agent. + * suspensionReason: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "a2aAgentDefinition": {}, + * // "adkAgentDefinition": {}, + * // "authorizationConfig": {}, + * // "createTime": "my_createTime", + * // "customPlaceholderText": "my_customPlaceholderText", + * // "deploymentFailureReason": "my_deploymentFailureReason", + * // "description": "my_description", + * // "dialogflowAgentDefinition": {}, + * // "displayName": "my_displayName", + * // "icon": {}, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "rejectionReason": "my_rejectionReason", + * // "sharingConfig": {}, + * // "starterPrompts": [], + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "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. + */ + suspendAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent, + options: StreamMethodOptions + ): Promise>; + suspendAgent( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + suspendAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendAgent( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent, + callback: BodyResponseCallback + ): void; + suspendAgent( + callback: BodyResponseCallback + ): void; + suspendAgent( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Suspendagent; + 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}:suspendAgent').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$Collections$Engines$Assistants$Agents$Create @@ -45183,6 +46659,20 @@ export namespace discoveryengine_v1alpha { */ name?: string; } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Disableagent + extends StandardParameters { + /** + * Required. The name of the Agent to disable. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Enableagent + extends StandardParameters { + /** + * Required. The name of the Agent to enable. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + */ + name?: string; + } export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Get extends StandardParameters { /** @@ -45190,6 +46680,32 @@ export namespace discoveryengine_v1alpha { */ name?: string; } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getagentview + extends StandardParameters { + /** + * Optional. The UI language currently shown to the user. Specifying this field request that the texts in the AgentView in the response should be translated to this language. + */ + languageCode?: string; + /** + * Optional. The maximum number of suggested prompts to return per agent. + */ + maxSuggestedPrompts?: number; + /** + * Required. The name of the Agent to get. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getiampolicy + extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List extends StandardParameters { /** @@ -45225,6 +46741,29 @@ export namespace discoveryengine_v1alpha { */ requestBody?: Schema$GoogleCloudDiscoveryengineV1alphaAgent; } + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$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$Collections$Engines$Assistants$Agents$Suspendagent + extends StandardParameters { + /** + * Required. The name of the Agent to suspend. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` + */ + name?: string; + /** + * Required. The reason for suspending the Agent. This will be shown to the users of the Agent. + */ + suspensionReason?: string; + } export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Files { context: APIRequestContext; @@ -76247,10 +77786,15 @@ export namespace discoveryengine_v1alpha { export class Resource$Projects$Locations$Userstores { context: APIRequestContext; + licenseConfigsUsageStats: Resource$Projects$Locations$Userstores$Licenseconfigsusagestats; operations: Resource$Projects$Locations$Userstores$Operations; userLicenses: Resource$Projects$Locations$Userstores$Userlicenses; constructor(context: APIRequestContext) { this.context = context; + this.licenseConfigsUsageStats = + new Resource$Projects$Locations$Userstores$Licenseconfigsusagestats( + this.context + ); this.operations = new Resource$Projects$Locations$Userstores$Operations( this.context ); @@ -77113,6 +78657,176 @@ export namespace discoveryengine_v1alpha { requestBody?: Schema$GoogleCloudDiscoveryengineV1alphaUserStore; } + export class Resource$Projects$Locations$Userstores$Licenseconfigsusagestats { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all the LicenseConfigUsageStatss associated with the project. + * @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.licenseConfigsUsageStats.list( + * { + * // Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + * parent: + * 'projects/my-project/locations/my-location/userStores/my-userStore', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "licenseConfigUsageStats": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `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$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + 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}/licenseConfigsUsageStats' + ).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$Userstores$Licenseconfigsusagestats$List + extends StandardParameters { + /** + * Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + */ + parent?: string; + } + export class Resource$Projects$Locations$Userstores$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -77503,7 +79217,7 @@ export namespace discoveryengine_v1alpha { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * // Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. * filter: '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', @@ -77633,7 +79347,7 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. */ filter?: string; /** diff --git a/src/apis/discoveryengine/v1beta.ts b/src/apis/discoveryengine/v1beta.ts index 3b9ede162f5..17b4787456d 100644 --- a/src/apis/discoveryengine/v1beta.ts +++ b/src/apis/discoveryengine/v1beta.ts @@ -2896,6 +2896,10 @@ export namespace discoveryengine_v1beta { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -2963,6 +2967,10 @@ export namespace discoveryengine_v1beta { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1alphaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -2999,6 +3007,10 @@ export namespace discoveryengine_v1beta { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -8642,6 +8654,10 @@ export namespace discoveryengine_v1beta { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -8731,6 +8747,10 @@ export namespace discoveryengine_v1beta { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1betaEngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1betaCmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -8767,6 +8787,10 @@ export namespace discoveryengine_v1beta { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -9694,6 +9718,19 @@ export namespace discoveryengine_v1beta { */ subscriptionTier?: string | null; } + /** + * Stats about users' licenses. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaLicenseConfigUsageStats { + /** + * Required. The LicenseConfig name. + */ + licenseConfig?: string | null; + /** + * Required. The number of licenses used. + */ + usedLicenseCount?: string | null; + } /** * Response message for CmekConfigService.ListCmekConfigs method. */ @@ -9842,6 +9879,15 @@ export namespace discoveryengine_v1beta { */ nextPageToken?: string | null; } + /** + * Response message for UserLicenseService.ListLicenseConfigUsageStats method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaListLicenseConfigsUsageStatsResponse { + /** + * All the customer's LicenseConfigUsageStats. + */ + licenseConfigUsageStats?: Schema$GoogleCloudDiscoveryengineV1betaLicenseConfigUsageStats[]; + } /** * Response message for SampleQueryService.ListSampleQueries method. */ @@ -13751,6 +13797,10 @@ export namespace discoveryengine_v1beta { * Optional. If true, the LLM based annotation is added to the image during parsing. */ enableImageAnnotation?: boolean | null; + /** + * Optional. If true, the pdf layout will be refined using an LLM. + */ + enableLlmLayoutParsing?: boolean | null; /** * Optional. If true, the LLM based annotation is added to the table during parsing. */ @@ -13818,6 +13868,10 @@ export namespace discoveryengine_v1beta { * Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. */ chatEngineMetadata?: Schema$GoogleCloudDiscoveryengineV1EngineChatEngineMetadata; + /** + * Output only. CMEK-related information for the Engine. + */ + cmekConfig?: Schema$GoogleCloudDiscoveryengineV1CmekConfig; /** * Common config spec that specifies the metadata of the engine. */ @@ -13854,6 +13908,10 @@ export namespace discoveryengine_v1beta { * Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. */ mediaRecommendationEngineConfig?: Schema$GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig; + /** + * Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin. When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it. + */ + modelConfigs?: {[key: string]: string} | null; /** * Immutable. Identifier. The fully qualified resource name of the engine. This field must be a UTF-8 encoded string with a length limit of 1024 characters. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}` engine should be 1-63 characters, and valid characters are /a-z0-9x/. Otherwise, an INVALID_ARGUMENT error is returned. */ @@ -33192,6 +33250,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33201,6 +33260,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -33513,6 +33573,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33522,6 +33583,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -33842,6 +33904,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33851,6 +33914,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -33865,6 +33929,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -33874,6 +33939,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -34036,6 +34102,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -34045,6 +34112,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -34210,6 +34278,7 @@ export namespace discoveryengine_v1beta { * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, + * // "cmekConfig": {}, * // "commonConfig": {}, * // "configurableBillingApproach": "my_configurableBillingApproach", * // "createTime": "my_createTime", @@ -34219,6 +34288,7 @@ export namespace discoveryengine_v1beta { * // "features": {}, * // "industryVertical": "my_industryVertical", * // "mediaRecommendationEngineConfig": {}, + * // "modelConfigs": {}, * // "name": "my_name", * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", @@ -60636,9 +60706,14 @@ export namespace discoveryengine_v1beta { 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); } @@ -61498,6 +61573,176 @@ export namespace discoveryengine_v1beta { requestBody?: Schema$GoogleCloudDiscoveryengineV1betaUserStore; } + export class Resource$Projects$Locations$Userstores$Licenseconfigsusagestats { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all the LicenseConfigUsageStatss associated with the project. + * @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.licenseConfigsUsageStats.list( + * { + * // Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + * parent: + * 'projects/my-project/locations/my-location/userStores/my-userStore', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "licenseConfigUsageStats": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `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$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Userstores$Licenseconfigsusagestats$List; + 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}/licenseConfigsUsageStats' + ).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$Userstores$Licenseconfigsusagestats$List + extends StandardParameters { + /** + * Required. The parent branch resource name, such as `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + */ + parent?: string; + } + export class Resource$Projects$Locations$Userstores$Userlicenses { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -61539,7 +61784,7 @@ export namespace discoveryengine_v1beta { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * // Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. * filter: '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', @@ -61669,7 +61914,7 @@ export namespace discoveryengine_v1beta { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. Filter for the list request. Supported fields: * `license_assignment_state` 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. + * Optional. Filter for the list request. Supported fields: * `license`_`assignment`_`state` * `user_principal` * `user_profile` 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. */ filter?: string; /** diff --git a/src/apis/gkebackup/v1.ts b/src/apis/gkebackup/v1.ts index 240740cb975..c626a4c68b5 100644 --- a/src/apis/gkebackup/v1.ts +++ b/src/apis/gkebackup/v1.ts @@ -1972,7 +1972,7 @@ export namespace gkebackup_v1 { * * // Do the magic * const res = await gkebackup.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // 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', @@ -2100,7 +2100,7 @@ export namespace gkebackup_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/merchantapi/inventories_v1.ts b/src/apis/merchantapi/inventories_v1.ts index 316d9c4885f..23272a4c5f9 100644 --- a/src/apis/merchantapi/inventories_v1.ts +++ b/src/apis/merchantapi/inventories_v1.ts @@ -405,6 +405,8 @@ export namespace merchantapi_inventories_v1 { * 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\}` * name: 'accounts/my-account/products/my-product/localInventories/my-localInventorie', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -541,6 +543,8 @@ export namespace merchantapi_inventories_v1 { * const res = await merchantapi.accounts.products.localInventories.insert({ * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -696,6 +700,8 @@ export namespace merchantapi_inventories_v1 { * pageToken: 'placeholder-value', * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -813,6 +819,10 @@ export namespace merchantapi_inventories_v1 { * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$Localinventories$Insert extends StandardParameters { @@ -820,6 +830,10 @@ export namespace merchantapi_inventories_v1 { * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * Request body metadata @@ -840,6 +854,10 @@ export namespace merchantapi_inventories_v1 { * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export class Resource$Accounts$Products$Regionalinventories { @@ -881,6 +899,8 @@ export namespace merchantapi_inventories_v1 { * const res = await merchantapi.accounts.products.regionalInventories.delete({ * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` * name: 'accounts/my-account/products/my-product/regionalInventories/my-regionalInventorie', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1017,6 +1037,8 @@ export namespace merchantapi_inventories_v1 { * const res = await merchantapi.accounts.products.regionalInventories.insert({ * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -1172,6 +1194,8 @@ export namespace merchantapi_inventories_v1 { * pageToken: 'placeholder-value', * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1290,6 +1314,10 @@ export namespace merchantapi_inventories_v1 { * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$Regionalinventories$Insert extends StandardParameters { @@ -1297,6 +1325,10 @@ export namespace merchantapi_inventories_v1 { * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * Request body metadata @@ -1317,5 +1349,9 @@ export namespace merchantapi_inventories_v1 { * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } } diff --git a/src/apis/merchantapi/inventories_v1beta.ts b/src/apis/merchantapi/inventories_v1beta.ts index 538c732f470..a2554be371b 100644 --- a/src/apis/merchantapi/inventories_v1beta.ts +++ b/src/apis/merchantapi/inventories_v1beta.ts @@ -412,6 +412,8 @@ export namespace merchantapi_inventories_v1beta { * 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\}` * name: 'accounts/my-account/products/my-product/localInventories/my-localInventorie', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -548,6 +550,8 @@ export namespace merchantapi_inventories_v1beta { * const res = await merchantapi.accounts.products.localInventories.insert({ * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -719,6 +723,8 @@ export namespace merchantapi_inventories_v1beta { * pageToken: 'placeholder-value', * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -836,6 +842,10 @@ export namespace merchantapi_inventories_v1beta { * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$Localinventories$Insert extends StandardParameters { @@ -843,6 +853,10 @@ export namespace merchantapi_inventories_v1beta { * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * Request body metadata @@ -863,6 +877,10 @@ export namespace merchantapi_inventories_v1beta { * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export class Resource$Accounts$Products$Regionalinventories { @@ -904,6 +922,8 @@ export namespace merchantapi_inventories_v1beta { * const res = await merchantapi.accounts.products.regionalInventories.delete({ * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` * name: 'accounts/my-account/products/my-product/regionalInventories/my-regionalInventorie', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1040,6 +1060,8 @@ export namespace merchantapi_inventories_v1beta { * const res = await merchantapi.accounts.products.regionalInventories.insert({ * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -1204,6 +1226,8 @@ export namespace merchantapi_inventories_v1beta { * pageToken: 'placeholder-value', * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` * parent: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1322,6 +1346,10 @@ export namespace merchantapi_inventories_v1beta { * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$Regionalinventories$Insert extends StandardParameters { @@ -1329,6 +1357,10 @@ export namespace merchantapi_inventories_v1beta { * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * Request body metadata @@ -1349,5 +1381,9 @@ export namespace merchantapi_inventories_v1beta { * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` */ parent?: string; + /** + * Optional. If true, the `{product\}` in the `parent` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } } diff --git a/src/apis/merchantapi/issueresolution_v1.ts b/src/apis/merchantapi/issueresolution_v1.ts index 6c1f35eef97..04077023795 100644 --- a/src/apis/merchantapi/issueresolution_v1.ts +++ b/src/apis/merchantapi/issueresolution_v1.ts @@ -1096,6 +1096,8 @@ export namespace merchantapi_issueresolution_v1 { * languageCode: 'placeholder-value', * // Required. The name of the product to fetch issues for. Format: `accounts/{account\}/products/{product\}` * name: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * // 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', * @@ -1396,6 +1398,10 @@ export namespace merchantapi_issueresolution_v1 { * Required. The name of the product to fetch issues for. Format: `accounts/{account\}/products/{product\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * 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. */ diff --git a/src/apis/merchantapi/issueresolution_v1beta.ts b/src/apis/merchantapi/issueresolution_v1beta.ts index a4e3f01c3d3..30582fc8e45 100644 --- a/src/apis/merchantapi/issueresolution_v1beta.ts +++ b/src/apis/merchantapi/issueresolution_v1beta.ts @@ -1097,6 +1097,8 @@ export namespace merchantapi_issueresolution_v1beta { * languageCode: 'placeholder-value', * // Required. The name of the product to fetch issues for. Format: `accounts/{account\}/products/{product\}` * name: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * // 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', * @@ -1397,6 +1399,10 @@ export namespace merchantapi_issueresolution_v1beta { * Required. The name of the product to fetch issues for. Format: `accounts/{account\}/products/{product\}` */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * 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. */ diff --git a/src/apis/merchantapi/products_v1.ts b/src/apis/merchantapi/products_v1.ts index 121c917b39d..e33f9f26c51 100644 --- a/src/apis/merchantapi/products_v1.ts +++ b/src/apis/merchantapi/products_v1.ts @@ -1327,6 +1327,8 @@ export namespace merchantapi_products_v1 { * dataSource: 'placeholder-value', * // Required. The name of the product input resource to delete. Format: `accounts/{account\}/productInputs/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/productInputs/en~US~sku123`. * name: 'accounts/my-account/productInputs/my-productInput', + * // Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1626,6 +1628,8 @@ export namespace merchantapi_products_v1 { * dataSource: 'placeholder-value', * // Identifier. The name of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` consists of: `content_language~feed_label~offer_id` example for product input name is `accounts/123/productInputs/en~US~sku123`. A legacy local product input name would be `accounts/123/productInputs/local~en~US~sku123`. Note: For calls to the v1beta version, the `productInput` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productInputs/online~en~US~sku123`. * name: 'accounts/my-account/productInputs/my-productInput', + * // Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * // 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', * @@ -1767,6 +1771,10 @@ export namespace merchantapi_products_v1 { * Required. The name of the product input resource to delete. Format: `accounts/{account\}/productInputs/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/productInputs/en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Productinputs$Insert extends StandardParameters { @@ -1794,6 +1802,10 @@ export namespace merchantapi_products_v1 { * Identifier. The name of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` consists of: `content_language~feed_label~offer_id` example for product input name is `accounts/123/productInputs/en~US~sku123`. A legacy local product input name would be `accounts/123/productInputs/local~en~US~sku123`. Note: For calls to the v1beta version, the `productInput` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productInputs/online~en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * 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. */ @@ -1844,6 +1856,8 @@ export namespace merchantapi_products_v1 { * const res = await merchantapi.accounts.products.get({ * // Required. The name of the product to retrieve. Format: `accounts/{account\}/products/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/products/en~US~sku123`. A legacy local product name would be `accounts/123/products/local~en~US~sku123`. Note: For calls to the v1beta version, the `product` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. * name: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -2109,6 +2123,10 @@ export namespace merchantapi_products_v1 { * Required. The name of the product to retrieve. Format: `accounts/{account\}/products/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/products/en~US~sku123`. A legacy local product name would be `accounts/123/products/local~en~US~sku123`. Note: For calls to the v1beta version, the `product` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$List extends StandardParameters { diff --git a/src/apis/merchantapi/products_v1beta.ts b/src/apis/merchantapi/products_v1beta.ts index f4ccb515477..a79b5e0709d 100644 --- a/src/apis/merchantapi/products_v1beta.ts +++ b/src/apis/merchantapi/products_v1beta.ts @@ -1261,6 +1261,8 @@ export namespace merchantapi_products_v1beta { * dataSource: 'placeholder-value', * // Required. The name of the product input resource to delete. Format: `accounts/{account\}/productInputs/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/productInputs/en~US~sku123`. * name: 'accounts/my-account/productInputs/my-productInput', + * // Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -1560,6 +1562,8 @@ export namespace merchantapi_products_v1beta { * dataSource: 'placeholder-value', * // Identifier. The name of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` consists of: `content_language~feed_label~offer_id` example for product input name is `accounts/123/productInputs/en~US~sku123`. A legacy local product input name would be `accounts/123/productInputs/local~en~US~sku123`. Note: For calls to the v1beta version, the `productInput` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productInputs/online~en~US~sku123`. * name: 'accounts/my-account/productInputs/my-productInput', + * // Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * // 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', * @@ -1701,6 +1705,10 @@ export namespace merchantapi_products_v1beta { * Required. The name of the product input resource to delete. Format: `accounts/{account\}/productInputs/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/productInputs/en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Productinputs$Insert extends StandardParameters { @@ -1728,6 +1736,10 @@ export namespace merchantapi_products_v1beta { * Identifier. The name of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` consists of: `content_language~feed_label~offer_id` example for product input name is `accounts/123/productInputs/en~US~sku123`. A legacy local product input name would be `accounts/123/productInputs/local~en~US~sku123`. Note: For calls to the v1beta version, the `productInput` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productInputs/online~en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{productInput\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{productInput\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; /** * 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. */ @@ -1778,6 +1790,8 @@ export namespace merchantapi_products_v1beta { * const res = await merchantapi.accounts.products.get({ * // Required. The name of the product to retrieve. Format: `accounts/{account\}/products/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/products/en~US~sku123`. A legacy local product name would be `accounts/123/products/local~en~US~sku123`. Note: For calls to the v1beta version, the `product` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. * name: 'accounts/my-account/products/my-product', + * // Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + * productIdBase64UrlEncoded: 'placeholder-value', * }); * console.log(res.data); * @@ -2043,6 +2057,10 @@ export namespace merchantapi_products_v1beta { * Required. The name of the product to retrieve. Format: `accounts/{account\}/products/{product\}` where the last section `product` consists of: `content_language~feed_label~offer_id` example for product name is `accounts/123/products/en~US~sku123`. A legacy local product name would be `accounts/123/products/local~en~US~sku123`. Note: For calls to the v1beta version, the `product` section consists of: `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. */ name?: string; + /** + * Optional. If true, the `{product\}` in the `name` field of the request will be interpreted as unpadded base64url-encoded and decoded during request processing to match the decoded value. Default value is `false`. Use this if your `{product\}` contains special characters, such as forward slash `/` or other characters that are unpadded base64url-encoded (as per RFC 7515: https://datatracker.ietf.org/doc/html/rfc7515#section-2). Note that future versions of the API will only accept unpadded base64url-encoded product ids, so we strongly recommend proactively setting this to `true` and encoding the product ids. + */ + productIdBase64UrlEncoded?: boolean; } export interface Params$Resource$Accounts$Products$List extends StandardParameters { diff --git a/src/apis/migrationcenter/v1.ts b/src/apis/migrationcenter/v1.ts index 1690263aac7..e43e90d9a12 100644 --- a/src/apis/migrationcenter/v1.ts +++ b/src/apis/migrationcenter/v1.ts @@ -1230,6 +1230,15 @@ export namespace migrationcenter_v1 { */ entries?: Schema$FstabEntry[]; } + /** + * A request to generate a link to an artifact for a Report. + */ + export interface Schema$GenerateReportArtifactLinkRequest { + /** + * Required. Type of the artifact requested. + */ + artifactType?: string | null; + } /** * A generic insight about an asset. */ @@ -2641,6 +2650,19 @@ export namespace migrationcenter_v1 { */ updateTime?: string | null; } + /** + * Describes a link to a generated artifact of the report. + */ + export interface Schema$ReportArtifactLink { + /** + * Output only. URI of the artifact. + */ + uri?: string | null; + /** + * Output only. Expiration time of the URI. + */ + uriExpirationTime?: string | null; + } /** * A response to a call to `ReportAssetFrame`. */ @@ -11991,6 +12013,159 @@ export namespace migrationcenter_v1 { this.context = context; } + /** + * Gets the link to the generated artifact of a given type for a Report. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.artifactLink( + * { + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "artifactType": "my_artifactType" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "uri": "my_uri", + * // "uriExpirationTime": "my_uriExpirationTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: StreamMethodOptions + ): Promise>; + artifactLink( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options?: MethodOptions + ): Promise>; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + callback: BodyResponseCallback + ): void; + artifactLink( + callback: BodyResponseCallback + ): void; + artifactLink( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:artifactLink').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 report. * @example @@ -12598,6 +12773,18 @@ export namespace migrationcenter_v1 { } } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink + extends StandardParameters { + /** + * Required. Name of the resource. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GenerateReportArtifactLinkRequest; + } export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Create extends StandardParameters { /** diff --git a/src/apis/migrationcenter/v1alpha1.ts b/src/apis/migrationcenter/v1alpha1.ts index 45dc8194497..60b0f94df71 100644 --- a/src/apis/migrationcenter/v1alpha1.ts +++ b/src/apis/migrationcenter/v1alpha1.ts @@ -1832,6 +1832,19 @@ export namespace migrationcenter_v1alpha1 { */ totalRowsCount?: number | null; } + /** + * Request to export a detailed pricing report. + */ + export interface Schema$ExportReportRequest {} + /** + * Response message for exporting report. + */ + export interface Schema$ExportReportResponse { + /** + * For large generated report, we may return multiple links + */ + reportArtifactLinks?: Schema$ReportArtifactLink[]; + } /** * A resource that aggregates the validation errors found in an import job file. */ @@ -1935,6 +1948,15 @@ export namespace migrationcenter_v1alpha1 { */ path?: string | null; } + /** + * A request to generate a link to an artifact for a Report. + */ + export interface Schema$GenerateReportArtifactLinkRequest { + /** + * Required. Type of the artifact requested. + */ + artifactType?: string | null; + } /** * A generic insight about an asset. */ @@ -2635,6 +2657,19 @@ export namespace migrationcenter_v1alpha1 { */ unreachable?: string[] | null; } + /** + * Response message for listing report export jobs. + */ + export interface Schema$ListReportExportJobsResponse { + /** + * Output only. A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Output only. The list of report export jobs. + */ + reportExportJobs?: Schema$ReportExportJob[]; + } /** * Response message for listing Reports. */ @@ -3580,6 +3615,10 @@ export namespace migrationcenter_v1alpha1 { * Output only. Summary view of the Report. */ summary?: Schema$ReportSummary; + /** + * Output only. Detailed data related to TCO reports. + */ + tcoDetails?: Schema$ReportTotalCostOfOwnershipDetails; /** * Report type. */ @@ -3589,6 +3628,23 @@ export namespace migrationcenter_v1alpha1 { */ updateTime?: string | null; } + /** + * Describes a link to a generated artifact of the report. + */ + export interface Schema$ReportArtifactLink { + /** + * Output only. Human friendly display name of the artifact. + */ + displayName?: string | null; + /** + * Output only. URI of the artifact. + */ + uri?: string | null; + /** + * Output only. Expiration time of the URI. + */ + uriExpirationTime?: string | null; + } /** * A response to a call to `ReportAssetFrame`. */ @@ -3635,6 +3691,69 @@ export namespace migrationcenter_v1alpha1 { */ preferenceSet?: string | null; } + /** + * Execution status of report export operation. + */ + export interface Schema$ReportExportExecution { + /** + * Output only. Completion time of the export. + */ + endTime?: string | null; + /** + * Output only. Globally unique identifier of the execution. + */ + executionId?: string | null; + /** + * Output only. Expiration time for the export and artifacts. + */ + expireTime?: string | null; + /** + * Output only. Represents the progress of the execution. It reaches 100 when the execution is successfully completed. When the execution finishes with a failure, the progress is set to 0. + */ + progressPercentage?: number | null; + /** + * Output only. Result of the export execution. + */ + result?: Schema$ReportExportExecutionResult; + /** + * Output only. Execution start timestamp. + */ + startTime?: string | null; + } + /** + * Contains the result of the report export. + */ + export interface Schema$ReportExportExecutionResult { + /** + * Output only. Error encountered during export. + */ + error?: Schema$Status; + /** + * Output only. List of output files. + */ + outputFiles?: Schema$OutputFileList; + /** + * Output only. Signed URLs for downloading export artifacts. + */ + signedUris?: Schema$SignedUris; + } + /** + * Report export job message. + */ + export interface Schema$ReportExportJob { + /** + * Output only. Identifier. Resource name. + */ + name?: string | null; + /** + * Output only. Recent not expired executions of the export report job. + */ + recentExecutions?: Schema$ReportExportExecution[]; + /** + * Export with a SignedUri. + */ + signedUriDestination?: Schema$SignedUriDestination; + } /** * Describes the Summary view of a Report, which contains aggregated values for all the groups and preference sets included in this Report. */ @@ -4028,6 +4147,15 @@ export namespace migrationcenter_v1alpha1 { */ vmwareNode?: Schema$ReportSummaryVMWareNode; } + /** + * Detailed data related to Total Cost of Ownership (TCO) pricing. + */ + export interface Schema$ReportTotalCostOfOwnershipDetails { + /** + * Output only. Whether the report has detailed pricing data. + */ + hasPricingData?: boolean | null; + } /** * Location of a resource. */ @@ -4152,6 +4280,24 @@ export namespace migrationcenter_v1alpha1 { */ services?: Schema$RunningService[]; } + /** + * A request to run a report export job. + */ + export interface Schema$RunReportExportJobRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + } + /** + * Response message for running a report export job. + */ + export interface Schema$RunReportExportJobResponse { + /** + * Output only. Execution status of the export operation. + */ + reportExportExecution?: Schema$ReportExportExecution; + } /** * Runtime networking information. */ @@ -14260,8 +14406,167 @@ export namespace migrationcenter_v1alpha1 { export class Resource$Projects$Locations$Reportconfigs$Reports { context: APIRequestContext; + reportExportJobs: Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs; constructor(context: APIRequestContext) { this.context = context; + this.reportExportJobs = + new Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs( + this.context + ); + } + + /** + * Gets the link to the generated artifact of a given type for a Report. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.artifactLink( + * { + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "artifactType": "my_artifactType" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "uri": "my_uri", + * // "uriExpirationTime": "my_uriExpirationTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: StreamMethodOptions + ): Promise>; + artifactLink( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options?: MethodOptions + ): Promise>; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + artifactLink( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink, + callback: BodyResponseCallback + ): void; + artifactLink( + callback: BodyResponseCallback + ): void; + artifactLink( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+name}:artifactLink').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); + } } /** @@ -14314,6 +14619,7 @@ export namespace migrationcenter_v1alpha1 { * // "name": "my_name", * // "state": "my_state", * // "summary": {}, + * // "tcoDetails": {}, * // "type": "my_type", * // "updateTime": "my_updateTime" * // } @@ -14572,7 +14878,7 @@ export namespace migrationcenter_v1alpha1 { } /** - * Gets details of a single Report. + * Export a Report into a supported format. * @example * ```js * // Before running the sample: @@ -14602,24 +14908,25 @@ export namespace migrationcenter_v1alpha1 { * * // Do the magic * const res = - * await migrationcenter.projects.locations.reportConfigs.reports.get({ + * await migrationcenter.projects.locations.reportConfigs.reports.export({ * // Required. Name of the resource. * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', - * // Determines what information to retrieve for the Report. - * view: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "state": "my_state", - * // "summary": {}, - * // "type": "my_type", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -14635,32 +14942,182 @@ export namespace migrationcenter_v1alpha1 { * @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$Reportconfigs$Reports$Get, + export( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Export, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + export( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Export, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + ): Promise>; + export( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Export, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + export( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Export, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, - callback: BodyResponseCallback + export( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Export, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + export(callback: BodyResponseCallback): void; + export( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reportconfigs$Reports$Get + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Export + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Export; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Export; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+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 details of a single Report. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.get({ + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', + * // Determines what information to retrieve for the Report. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "state": "my_state", + * // "summary": {}, + * // "tcoDetails": {}, + * // "type": "my_type", + * // "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$Reportconfigs$Reports$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -14871,6 +15328,18 @@ export namespace migrationcenter_v1alpha1 { } } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Artifactlink + extends StandardParameters { + /** + * Required. Name of the resource. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GenerateReportArtifactLinkRequest; + } export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Create extends StandardParameters { /** @@ -14902,6 +15371,18 @@ export namespace migrationcenter_v1alpha1 { */ requestId?: string; } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Export + extends StandardParameters { + /** + * Required. Name of the resource. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportReportRequest; + } export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Get extends StandardParameters { /** @@ -14941,6 +15422,834 @@ export namespace migrationcenter_v1alpha1 { view?: string; } + export class Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Export a Report into a supported destination. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.create( + * { + * // Required. The parent resource where this export job will be created. + * parent: + * 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', + * // Required. The ID to use for the report export job. + * reportExportJobId: 'placeholder-value', + * // 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', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name", + * // "recentExecutions": [], + * // "signedUriDestination": {} + * // } + * }, + * }, + * ); + * 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$Reportconfigs$Reports$Reportexportjobs$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+parent}/reportExportJobs').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 an report export job. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.delete( + * { + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report/reportExportJobs/my-reportExportJob', + * // 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$Reportconfigs$Reports$Reportexportjobs$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+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 report export job. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.get( + * { + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report/reportExportJobs/my-reportExportJob', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "name": "my_name", + * // "recentExecutions": [], + * // "signedUriDestination": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `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$Reportconfigs$Reports$Reportexportjobs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+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 the report export jobs for a given report. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.list( + * { + * // Optional. Requested page size. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default value. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results that the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent report owning the export jobs. + * parent: + * 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "reportExportJobs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `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$Reportconfigs$Reports$Reportexportjobs$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+parent}/reportExportJobs').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 + ); + } + } + + /** + * Runs a report export job. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/migrationcenter.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const migrationcenter = google.migrationcenter('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.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 migrationcenter.projects.locations.reportConfigs.reports.reportExportJobs.run( + * { + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig/reports/my-report/reportExportJobs/my-reportExportJob', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "requestId": "my_requestId" + * // } + * }, + * }, + * ); + * 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. + */ + run( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run, + options: StreamMethodOptions + ): Promise>; + run( + params?: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run, + options?: MethodOptions + ): Promise>; + run( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + run( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + run( + params: Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run, + callback: BodyResponseCallback + ): void; + run(callback: BodyResponseCallback): void; + run( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://migrationcenter.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+name}:run').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$Reportconfigs$Reports$Reportexportjobs$Create + extends StandardParameters { + /** + * Required. The parent resource where this export job will be created. + */ + parent?: string; + /** + * Required. The ID to use for the report export job. + */ + reportExportJobId?: 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ReportExportJob; + } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Delete + extends StandardParameters { + /** + * Required. Name of the resource. + */ + 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$Reportconfigs$Reports$Reportexportjobs$Get + extends StandardParameters { + /** + * Required. Name of the resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$List + extends StandardParameters { + /** + * Optional. Requested page size. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default value. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results that the server should return. + */ + pageToken?: string; + /** + * Required. Parent report owning the export jobs. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Reportconfigs$Reports$Reportexportjobs$Run + extends StandardParameters { + /** + * Required. Name of the resource. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RunReportExportJobRequest; + } + export class Resource$Projects$Locations$Sources { context: APIRequestContext; errorFrames: Resource$Projects$Locations$Sources$Errorframes; diff --git a/src/apis/paymentsresellersubscription/v1.ts b/src/apis/paymentsresellersubscription/v1.ts index 4b5782075ec..b8fbbdc708d 100644 --- a/src/apis/paymentsresellersubscription/v1.ts +++ b/src/apis/paymentsresellersubscription/v1.ts @@ -626,6 +626,10 @@ export namespace paymentsresellersubscription_v1 { * Optional. The cycle options for the subscription. */ cycleOptions?: Schema$CycleOptions; + /** + * Optional. The mode to resume the subscription. + */ + resumeMode?: string | null; } /** * Response that contains the resumed subscription. @@ -2500,7 +2504,8 @@ export namespace paymentsresellersubscription_v1 { * requestBody: { * // request body parameters * // { - * // "cycleOptions": {} + * // "cycleOptions": {}, + * // "resumeMode": "my_resumeMode" * // } * }, * }); diff --git a/src/apis/spanner/v1.ts b/src/apis/spanner/v1.ts index 5af26fae482..fe6e6892d14 100644 --- a/src/apis/spanner/v1.ts +++ b/src/apis/spanner/v1.ts @@ -421,7 +421,7 @@ export namespace spanner_v1 { */ export interface Schema$BatchCreateSessionsRequest { /** - * Required. The number of sessions to be created in this batch call. The API can return fewer than the requested number of sessions. If a specific number of sessions are desired, the client can make additional calls to `BatchCreateSessions` (adjusting session_count as necessary). + * Required. The number of sessions to be created in this batch call. At least one session is created. The API can return fewer than the requested number of sessions. If a specific number of sessions are desired, the client can make additional calls to `BatchCreateSessions` (adjusting session_count as necessary). */ sessionCount?: number | null; /** @@ -1620,6 +1620,10 @@ export namespace spanner_v1 { * An isolated set of Cloud Spanner resources that databases can define placements on. */ export interface Schema$InstancePartition { + /** + * Optional. The autoscaling configuration. Autoscaling is enabled if this field is set. When autoscaling is enabled, fields in compute_capacity are treated as OUTPUT_ONLY fields and reflect the current compute capacity allocated to the instance partition. + */ + autoscalingConfig?: Schema$AutoscalingConfig; /** * Required. The name of the instance partition's configuration. Values are of the form `projects//instanceConfigs/`. See also InstanceConfig and ListInstanceConfigs. */ @@ -1942,6 +1946,10 @@ export namespace spanner_v1 { * 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 e.g. when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * Response method from the ListScans method. @@ -4844,13 +4852,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -4988,6 +4999,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Instanceconfigs$Ssdcaches { @@ -5466,13 +5481,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -5611,6 +5629,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Instances { @@ -9288,13 +9310,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -9433,6 +9458,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Instances$Databaseoperations { @@ -14045,13 +14074,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -14190,6 +14222,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Instances$Databases$Sessions { @@ -17761,6 +17797,7 @@ export namespace spanner_v1 { * * // Example response * // { + * // "autoscalingConfig": {}, * // "config": "my_config", * // "createTime": "my_createTime", * // "displayName": "my_displayName", @@ -18703,13 +18740,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -18848,6 +18888,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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$Instances$Operations { @@ -19309,13 +19353,16 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported 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": [] * // } * } * @@ -19453,6 +19500,10 @@ export namespace spanner_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 e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; } export class Resource$Scans { diff --git a/src/apis/sqladmin/v1.ts b/src/apis/sqladmin/v1.ts index 166b7ec03bb..71cfb875332 100644 --- a/src/apis/sqladmin/v1.ts +++ b/src/apis/sqladmin/v1.ts @@ -1561,6 +1561,23 @@ export namespace sqladmin_v1 { */ importContext?: Schema$ImportContext; } + /** + * Instances ListEntraIdCertificates response. + */ + export interface Schema$InstancesListEntraIdCertificatesResponse { + /** + * The `sha1_fingerprint` of the active certificate from `certs`. + */ + activeVersion?: string | null; + /** + * List of Entra ID certificates for the instance. + */ + certs?: Schema$SslCert[]; + /** + * This is always `sql#instancesListEntraIdCertificates`. + */ + kind?: string | null; + } /** * Database instances list response. */ @@ -1660,6 +1677,15 @@ export namespace sqladmin_v1 { */ restoreInstanceSettings?: Schema$DatabaseInstance; } + /** + * Rotate Entra ID certificate request. + */ + export interface Schema$InstancesRotateEntraIdCertificateRequest { + /** + * Optional. Contains details about the rotate server certificate operation. + */ + rotateEntraIdCertificateContext?: Schema$RotateEntraIdCertificateContext; + } /** * Rotate server CA request. */ @@ -1744,6 +1770,10 @@ export namespace sqladmin_v1 { * Optional. The resource name of the server CA pool for an instance with `CUSTOMER_MANAGED_CAS_CA` as the `server_ca_mode`. Format: projects/{PROJECT\}/locations/{REGION\}/caPools/{CA_POOL_ID\} */ serverCaPool?: string | null; + /** + * Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA. + */ + serverCertificateRotationMode?: string | null; /** * Specify how SSL/TLS is enforced in database connections. If you must use the `require_ssl` flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` For SQL Server: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` The value of `ssl_mode` has priority over the value of `require_ssl`. For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL connections, while `require_ssl=false` means accept both non-SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect `ssl_mode` and accepts only SSL connections. */ @@ -2172,7 +2202,7 @@ export namespace sqladmin_v1 { targetSizeGb?: string | null; } /** - * The context to perform a point-in-time recovery of an instance managed by Google Cloud Backup and Disaster Recovery. + * The context to perform a point-in-time recovery of an instance managed by Backup and Disaster Recovery (DR) Service. */ export interface Schema$PointInTimeRestoreContext { /** @@ -2180,7 +2210,7 @@ export namespace sqladmin_v1 { */ allocatedIpRange?: string | null; /** - * The Google Cloud Backup and Disaster Recovery Datasource URI. Format: projects/{project\}/locations/{region\}/backupVaults/{backupvault\}/dataSources/{datasource\}. + * The Backup and Disaster Recovery (DR) Service Datasource URI. Format: projects/{project\}/locations/{region\}/backupVaults/{backupvault\}/dataSources/{datasource\}. */ datasource?: string | null; /** @@ -2440,6 +2470,19 @@ export namespace sqladmin_v1 { */ project?: string | null; } + /** + * Instance rotate Entra ID certificate context. + */ + export interface Schema$RotateEntraIdCertificateContext { + /** + * Optional. This is always `sql#rotateEntraIdCertificateContext`. + */ + kind?: string | null; + /** + * Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added server certificate version. + */ + nextVersion?: string | null; + } /** * Instance rotate server CA context. */ @@ -2533,7 +2576,7 @@ export namespace sqladmin_v1 { */ crashSafeReplicationEnabled?: boolean | null; /** - * This parameter controls whether to allow using Data API to connect to the instance. Not allowed by default. + * This parameter controls whether to allow using ExecuteSql API to connect to the instance. Not allowed by default. */ dataApiAccess?: string | null; /** @@ -2584,6 +2627,10 @@ export namespace sqladmin_v1 { * Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for MySQL and Cloud SQL for PostgreSQL instances. */ enableGoogleMlIntegration?: boolean | null; + /** + * Optional. The Microsoft Entra ID configuration for the SQL Server instance. + */ + entraidConfig?: Schema$SqlServerEntraIdConfig; /** * Optional. The final backup configuration for the instance. */ @@ -2937,6 +2984,23 @@ export namespace sqladmin_v1 { */ recoveryModel?: string | null; } + /** + * SQL Server Entra ID configuration. + */ + export interface Schema$SqlServerEntraIdConfig { + /** + * Optional. The application ID for the Entra ID configuration. + */ + applicationId?: string | null; + /** + * Output only. This is always sql#sqlServerEntraIdConfig + */ + kind?: string | null; + /** + * Optional. The tenant ID for the Entra ID configuration. + */ + tenantId?: string | null; + } /** * Represents a Sql Server user on the Cloud SQL instance. */ @@ -3167,6 +3231,10 @@ export namespace sqladmin_v1 { * A Cloud SQL user resource. */ export interface Schema$User { + /** + * Optional. Role memberships of the user + */ + databaseRoles?: string[] | null; /** * Dual password status for the user. */ @@ -8884,6 +8952,160 @@ export namespace sqladmin_v1 { } } + /** + * Lists all versions of EntraID certificates for the specified instance. There can be up to three sets of certificates listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/sqladmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1'); + * + * async function main() { + * const auth = new google.auth.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/sqlservice.admin', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await sql.instances.ListEntraIdCertificates({ + * // Required. Cloud SQL instance ID. This does not include the project ID. + * instance: 'placeholder-value', + * // Required. Project ID of the project that contains the instance. + * project: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "activeVersion": "my_activeVersion", + * // "certs": [], + * // "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. + */ + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, + options: StreamMethodOptions + ): Promise>; + ListEntraIdCertificates( + params?: Params$Resource$Instances$Listentraidcertificates, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, + callback: BodyResponseCallback + ): void; + ListEntraIdCertificates( + callback: BodyResponseCallback + ): void; + ListEntraIdCertificates( + paramsOrCallback?: + | Params$Resource$Instances$Listentraidcertificates + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Listentraidcertificates; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Listentraidcertificates; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/projects/{project}/instances/{instance}/listEntraIdCertificates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Lists all of the trusted Certificate Authorities (CAs) for the specified instance. There can be up to three CAs listed: the CA that was used to sign the certificate that is currently in use, a CA that has been added but not yet used to sign a certificate, and a CA used to sign a certificate that has previously rotated out. * @example @@ -10729,6 +10951,177 @@ export namespace sqladmin_v1 { } } + /** + * Rotates the server certificate version to one previously added with the addEntraIdCertificate method. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/sqladmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1'); + * + * async function main() { + * const auth = new google.auth.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/sqlservice.admin', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await sql.instances.RotateEntraIdCertificate({ + * // Required. Cloud SQL instance ID. This does not include the project ID. + * instance: 'placeholder-value', + * // Required. Project ID of the project that contains the instance. + * project: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "rotateEntraIdCertificateContext": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "acquireSsrsLeaseContext": {}, + * // "apiWarning": {}, + * // "backupContext": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "exportContext": {}, + * // "importContext": {}, + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationType": "my_operationType", + * // "preCheckMajorVersionUpgradeContext": {}, + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "subOperationType": {}, + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "targetProject": "my_targetProject", + * // "user": "my_user" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: StreamMethodOptions + ): Promise>; + RotateEntraIdCertificate( + params?: Params$Resource$Instances$Rotateentraidcertificate, + options?: MethodOptions + ): Promise>; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + paramsOrCallback?: + | Params$Resource$Instances$Rotateentraidcertificate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Rotateentraidcertificate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Rotateentraidcertificate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/projects/{project}/instances/{instance}/rotateEntraIdCertificate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Rotates the server certificate to one signed by the Certificate Authority (CA) version previously added with the addServerCA method. For instances that have enabled Certificate Authority Service (CAS) based server CA, use RotateServerCertificate to rotate the server certificate. * @example @@ -12151,6 +12544,17 @@ export namespace sqladmin_v1 { */ project?: string; } + export interface Params$Resource$Instances$Listentraidcertificates + extends StandardParameters { + /** + * Required. Cloud SQL instance ID. This does not include the project ID. + */ + instance?: string; + /** + * Required. Project ID of the project that contains the instance. + */ + project?: string; + } export interface Params$Resource$Instances$Listservercas extends StandardParameters { /** @@ -12300,6 +12704,22 @@ export namespace sqladmin_v1 { */ requestBody?: Schema$InstancesRestoreBackupRequest; } + export interface Params$Resource$Instances$Rotateentraidcertificate + extends StandardParameters { + /** + * Required. Cloud SQL instance ID. This does not include the project ID. + */ + instance?: string; + /** + * Required. Project ID of the project that contains the instance. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesRotateEntraIdCertificateRequest; + } export interface Params$Resource$Instances$Rotateserverca extends StandardParameters { /** @@ -15393,6 +15813,7 @@ export namespace sqladmin_v1 { * * // Example response * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -15546,6 +15967,7 @@ export namespace sqladmin_v1 { * requestBody: { * // request body parameters * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -15858,6 +16280,8 @@ export namespace sqladmin_v1 { * * // Do the magic * const res = await sql.users.update({ + * // Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request. + * databaseRoles: 'placeholder-value', * // Optional. Host of the user in the instance. * host: 'placeholder-value', * // Database instance ID. This does not include the project ID. @@ -15871,6 +16295,7 @@ export namespace sqladmin_v1 { * requestBody: { * // request body parameters * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -16070,6 +16495,10 @@ export namespace sqladmin_v1 { project?: string; } export interface Params$Resource$Users$Update extends StandardParameters { + /** + * Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request. + */ + databaseRoles?: string[]; /** * Optional. Host of the user in the instance. */ diff --git a/src/apis/sqladmin/v1beta4.ts b/src/apis/sqladmin/v1beta4.ts index 656f7b0663d..40ab4b99cf2 100644 --- a/src/apis/sqladmin/v1beta4.ts +++ b/src/apis/sqladmin/v1beta4.ts @@ -1564,6 +1564,23 @@ export namespace sqladmin_v1beta4 { */ importContext?: Schema$ImportContext; } + /** + * Instances ListEntraIdCertificates response. + */ + export interface Schema$InstancesListEntraIdCertificatesResponse { + /** + * The `sha1_fingerprint` of the active certificate from `certs`. + */ + activeVersion?: string | null; + /** + * List of Entra ID certificates for the instance. + */ + certs?: Schema$SslCert[]; + /** + * This is always `sql#instancesListEntraIdCertificates`. + */ + kind?: string | null; + } /** * Database instances list response. */ @@ -1663,6 +1680,15 @@ export namespace sqladmin_v1beta4 { */ restoreInstanceSettings?: Schema$DatabaseInstance; } + /** + * Rotate Entra ID Certificate request. + */ + export interface Schema$InstancesRotateEntraIdCertificateRequest { + /** + * Optional. Contains details about the rotate Entra ID certificate operation. + */ + rotateEntraIdCertificateContext?: Schema$RotateEntraIdCertificateContext; + } /** * Rotate Server CA request. */ @@ -1747,6 +1773,10 @@ export namespace sqladmin_v1beta4 { * Optional. The resource name of the server CA pool for an instance with `CUSTOMER_MANAGED_CAS_CA` as the `server_ca_mode`. Format: projects/{PROJECT\}/locations/{REGION\}/caPools/{CA_POOL_ID\} */ serverCaPool?: string | null; + /** + * Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA. + */ + serverCertificateRotationMode?: string | null; /** * Specify how SSL/TLS is enforced in database connections. If you must use the `require_ssl` flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` For SQL Server: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` The value of `ssl_mode` has priority over the value of `require_ssl`. For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL connections, while `require_ssl=false` means accept both non-SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect `ssl_mode` and accepts only SSL connections. */ @@ -2175,7 +2205,7 @@ export namespace sqladmin_v1beta4 { targetSizeGb?: string | null; } /** - * Context to perform a point-in-time restore of an instance managed by Google Cloud Backup and Disaster Recovery. + * Context to perform a point-in-time restore of an instance managed by Backup and Disaster Recovery (DR) Service. */ export interface Schema$PointInTimeRestoreContext { /** @@ -2183,7 +2213,7 @@ export namespace sqladmin_v1beta4 { */ allocatedIpRange?: string | null; /** - * The Google Cloud Backup and Disaster Recovery Datasource URI. Format: projects/{project\}/locations/{region\}/backupVaults/{backupvault\}/dataSources/{datasource\}. + * The Backup and Disaster Recovery (DR) Service Datasource URI. Format: projects/{project\}/locations/{region\}/backupVaults/{backupvault\}/dataSources/{datasource\}. */ datasource?: string | null; /** @@ -2443,6 +2473,19 @@ export namespace sqladmin_v1beta4 { */ project?: string | null; } + /** + * Instance rotate Entra ID certificate context. + */ + export interface Schema$RotateEntraIdCertificateContext { + /** + * Optional. This is always `sql#rotateEntraIdCertificateContext`. + */ + kind?: string | null; + /** + * Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added Entra ID certificate version. + */ + nextVersion?: string | null; + } /** * Instance rotate server CA context. */ @@ -2536,7 +2579,7 @@ export namespace sqladmin_v1beta4 { */ crashSafeReplicationEnabled?: boolean | null; /** - * This parameter controls whether to allow using Data API to connect to the instance. Not allowed by default. + * This parameter controls whether to allow using ExecuteSql API to connect to the instance. Not allowed by default. */ dataApiAccess?: string | null; /** @@ -2587,6 +2630,10 @@ export namespace sqladmin_v1beta4 { * Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for MySQL and Cloud SQL for PostgreSQL instances. */ enableGoogleMlIntegration?: boolean | null; + /** + * Optional. The Microsoft Entra ID configuration for the SQL Server instance. + */ + entraidConfig?: Schema$SqlServerEntraIdConfig; /** * Optional. The final backup configuration for the instance. */ @@ -2719,6 +2766,10 @@ export namespace sqladmin_v1beta4 { */ operationId?: string | null; } + /** + * Request for AddEntraIdCertificate RPC. + */ + export interface Schema$SqlInstancesAddEntraIdCertificateRequest {} /** * Execute SQL statements response. */ @@ -2934,6 +2985,23 @@ export namespace sqladmin_v1beta4 { */ recoveryModel?: string | null; } + /** + * SQL Server Entra ID configuration. + */ + export interface Schema$SqlServerEntraIdConfig { + /** + * Optional. The application ID for the Entra ID configuration. + */ + applicationId?: string | null; + /** + * Output only. This is always sql#sqlServerEntraIdConfig + */ + kind?: string | null; + /** + * Optional. The tenant ID for the Entra ID configuration. + */ + tenantId?: string | null; + } /** * Represents a Sql Server user on the Cloud SQL instance. */ @@ -3164,6 +3232,10 @@ export namespace sqladmin_v1beta4 { * A Cloud SQL user resource. */ export interface Schema$User { + /** + * Optional. Role memberships of the user + */ + databaseRoles?: string[] | null; /** * Dual password status for the user. */ @@ -6685,6 +6757,175 @@ export namespace sqladmin_v1beta4 { } } + /** + * Adds a new Entra ID certificate for the specified instance. If an Entra ID certificate was previously added but never used in a certificate rotation, this operation replaces that version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/sqladmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1beta4'); + * + * async function main() { + * const auth = new google.auth.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/sqlservice.admin', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await sql.instances.addEntraIdCertificate({ + * // Required. Cloud SQL instance ID. This does not include the project ID. + * instance: 'placeholder-value', + * // Required. Project ID of the project that contains the instance. + * project: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "acquireSsrsLeaseContext": {}, + * // "apiWarning": {}, + * // "backupContext": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "exportContext": {}, + * // "importContext": {}, + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationType": "my_operationType", + * // "preCheckMajorVersionUpgradeContext": {}, + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "subOperationType": {}, + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "targetProject": "my_targetProject", + * // "user": "my_user" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + addEntraIdCertificate( + params: Params$Resource$Instances$Addentraidcertificate, + options: StreamMethodOptions + ): Promise>; + addEntraIdCertificate( + params?: Params$Resource$Instances$Addentraidcertificate, + options?: MethodOptions + ): Promise>; + addEntraIdCertificate( + params: Params$Resource$Instances$Addentraidcertificate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addEntraIdCertificate( + params: Params$Resource$Instances$Addentraidcertificate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addEntraIdCertificate( + params: Params$Resource$Instances$Addentraidcertificate, + callback: BodyResponseCallback + ): void; + addEntraIdCertificate( + callback: BodyResponseCallback + ): void; + addEntraIdCertificate( + paramsOrCallback?: + | Params$Resource$Instances$Addentraidcertificate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Addentraidcertificate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Addentraidcertificate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Add a new trusted Certificate Authority (CA) version for the specified instance. Required to prepare for a certificate rotation. If a CA version was previously added but never used in a certificate rotation, this operation replaces that version. There cannot be more than one CA version waiting to be rotated in. For instances that have enabled Certificate Authority Service (CAS) based server CA, use AddServerCertificate to add a new server certificate. * @example @@ -8899,7 +9140,7 @@ export namespace sqladmin_v1beta4 { } /** - * Lists all of the trusted Certificate Authorities (CAs) for the specified instance. There can be up to three CAs listed: the CA that was used to sign the certificate that is currently in use, a CA that has been added but not yet used to sign a certificate, and a CA used to sign a certificate that has previously rotated out. + * Lists all versions of EntraID certificates for the specified instance. There can be up to three sets of certificates listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. * @example * ```js * // Before running the sample: @@ -8931,10 +9172,10 @@ export namespace sqladmin_v1beta4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await sql.instances.listServerCas({ - * // Cloud SQL instance ID. This does not include the project ID. + * const res = await sql.instances.ListEntraIdCertificates({ + * // Required. Cloud SQL instance ID. This does not include the project ID. * instance: 'placeholder-value', - * // Project ID of the project that contains the instance. + * // Required. Project ID of the project that contains the instance. * project: 'placeholder-value', * }); * console.log(res.data); @@ -8959,57 +9200,61 @@ export namespace sqladmin_v1beta4 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listServerCas( - params: Params$Resource$Instances$Listservercas, + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, options: StreamMethodOptions ): Promise>; - listServerCas( - params?: Params$Resource$Instances$Listservercas, + ListEntraIdCertificates( + params?: Params$Resource$Instances$Listentraidcertificates, options?: MethodOptions - ): Promise>; - listServerCas( - params: Params$Resource$Instances$Listservercas, + ): Promise< + GaxiosResponseWithHTTP2 + >; + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listServerCas( - params: Params$Resource$Instances$Listservercas, + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listServerCas( - params: Params$Resource$Instances$Listservercas, - callback: BodyResponseCallback + ListEntraIdCertificates( + params: Params$Resource$Instances$Listentraidcertificates, + callback: BodyResponseCallback ): void; - listServerCas( - callback: BodyResponseCallback + ListEntraIdCertificates( + callback: BodyResponseCallback ): void; - listServerCas( + ListEntraIdCertificates( paramsOrCallback?: - | Params$Resource$Instances$Listservercas - | BodyResponseCallback + | Params$Resource$Instances$Listentraidcertificates + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Listservercas; + {}) as Params$Resource$Instances$Listentraidcertificates; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Listservercas; + params = {} as Params$Resource$Instances$Listentraidcertificates; options = {}; } @@ -9024,7 +9269,7 @@ export namespace sqladmin_v1beta4 { { url: ( rootUrl + - '/sql/v1beta4/projects/{project}/instances/{instance}/listServerCas' + '/sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -9037,19 +9282,19 @@ export namespace sqladmin_v1beta4 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Lists all versions of server certificates and certificate authorities (CAs) for the specified instance. There can be up to three sets of certs listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. For instances not using Certificate Authority Service (CAS) server CA, use ListServerCas instead. + * Lists all of the trusted Certificate Authorities (CAs) for the specified instance. There can be up to three CAs listed: the CA that was used to sign the certificate that is currently in use, a CA that has been added but not yet used to sign a certificate, and a CA used to sign a certificate that has previously rotated out. * @example * ```js * // Before running the sample: @@ -9081,10 +9326,10 @@ export namespace sqladmin_v1beta4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await sql.instances.ListServerCertificates({ - * // Required. Cloud SQL instance ID. This does not include the project ID. + * const res = await sql.instances.listServerCas({ + * // Cloud SQL instance ID. This does not include the project ID. * instance: 'placeholder-value', - * // Required. Project ID of the project that contains the instance. + * // Project ID of the project that contains the instance. * project: 'placeholder-value', * }); * console.log(res.data); @@ -9092,9 +9337,8 @@ export namespace sqladmin_v1beta4 { * // Example response * // { * // "activeVersion": "my_activeVersion", - * // "caCerts": [], - * // "kind": "my_kind", - * // "serverCerts": [] + * // "certs": [], + * // "kind": "my_kind" * // } * } * @@ -9110,16 +9354,167 @@ export namespace sqladmin_v1beta4 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - ListServerCertificates( - params: Params$Resource$Instances$Listservercertificates, + listServerCas( + params: Params$Resource$Instances$Listservercas, options: StreamMethodOptions ): Promise>; - ListServerCertificates( - params?: Params$Resource$Instances$Listservercertificates, + listServerCas( + params?: Params$Resource$Instances$Listservercas, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; + listServerCas( + params: Params$Resource$Instances$Listservercas, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listServerCas( + params: Params$Resource$Instances$Listservercas, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listServerCas( + params: Params$Resource$Instances$Listservercas, + callback: BodyResponseCallback + ): void; + listServerCas( + callback: BodyResponseCallback + ): void; + listServerCas( + paramsOrCallback?: + | Params$Resource$Instances$Listservercas + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Listservercas; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Listservercas; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/sql/v1beta4/projects/{project}/instances/{instance}/listServerCas' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists all versions of server certificates and certificate authorities (CAs) for the specified instance. There can be up to three sets of certs listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. For instances not using Certificate Authority Service (CAS) server CA, use ListServerCas instead. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/sqladmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1beta4'); + * + * async function main() { + * const auth = new google.auth.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/sqlservice.admin', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await sql.instances.ListServerCertificates({ + * // Required. Cloud SQL instance ID. This does not include the project ID. + * instance: 'placeholder-value', + * // Required. Project ID of the project that contains the instance. + * project: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "activeVersion": "my_activeVersion", + * // "caCerts": [], + * // "kind": "my_kind", + * // "serverCerts": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + ListServerCertificates( + params: Params$Resource$Instances$Listservercertificates, + options: StreamMethodOptions + ): Promise>; + ListServerCertificates( + params?: Params$Resource$Instances$Listservercertificates, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; ListServerCertificates( params: Params$Resource$Instances$Listservercertificates, options: StreamMethodOptions | BodyResponseCallback, @@ -10744,6 +11139,177 @@ export namespace sqladmin_v1beta4 { } } + /** + * Rotates the Entra Id certificate version to one previously added with the addEntraIdCertificate method. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/sqladmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1beta4'); + * + * async function main() { + * const auth = new google.auth.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/sqlservice.admin', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await sql.instances.RotateEntraIdCertificate({ + * // Required. Cloud SQL instance ID. This does not include the project ID. + * instance: 'placeholder-value', + * // Required. Project ID of the project that contains the instance. + * project: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "rotateEntraIdCertificateContext": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "acquireSsrsLeaseContext": {}, + * // "apiWarning": {}, + * // "backupContext": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "exportContext": {}, + * // "importContext": {}, + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationType": "my_operationType", + * // "preCheckMajorVersionUpgradeContext": {}, + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "subOperationType": {}, + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "targetProject": "my_targetProject", + * // "user": "my_user" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: StreamMethodOptions + ): Promise>; + RotateEntraIdCertificate( + params?: Params$Resource$Instances$Rotateentraidcertificate, + options?: MethodOptions + ): Promise>; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + params: Params$Resource$Instances$Rotateentraidcertificate, + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + callback: BodyResponseCallback + ): void; + RotateEntraIdCertificate( + paramsOrCallback?: + | Params$Resource$Instances$Rotateentraidcertificate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Rotateentraidcertificate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Rotateentraidcertificate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Rotates the server certificate to one signed by the Certificate Authority (CA) version previously added with the addServerCA method. For instances that have enabled Certificate Authority Service (CAS) based server CA, use RotateServerCertificate to rotate the server certificate. * @example @@ -11972,6 +12538,22 @@ export namespace sqladmin_v1beta4 { */ requestBody?: Schema$InstancesAcquireSsrsLeaseRequest; } + export interface Params$Resource$Instances$Addentraidcertificate + extends StandardParameters { + /** + * Required. Cloud SQL instance ID. This does not include the project ID. + */ + instance?: string; + /** + * Required. Project ID of the project that contains the instance. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SqlInstancesAddEntraIdCertificateRequest; + } export interface Params$Resource$Instances$Addserverca extends StandardParameters { /** @@ -12167,6 +12749,17 @@ export namespace sqladmin_v1beta4 { */ project?: string; } + export interface Params$Resource$Instances$Listentraidcertificates + extends StandardParameters { + /** + * Required. Cloud SQL instance ID. This does not include the project ID. + */ + instance?: string; + /** + * Required. Project ID of the project that contains the instance. + */ + project?: string; + } export interface Params$Resource$Instances$Listservercas extends StandardParameters { /** @@ -12316,6 +12909,22 @@ export namespace sqladmin_v1beta4 { */ requestBody?: Schema$InstancesRestoreBackupRequest; } + export interface Params$Resource$Instances$Rotateentraidcertificate + extends StandardParameters { + /** + * Required. Cloud SQL instance ID. This does not include the project ID. + */ + instance?: string; + /** + * Required. Project ID of the project that contains the instance. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesRotateEntraIdCertificateRequest; + } export interface Params$Resource$Instances$Rotateserverca extends StandardParameters { /** @@ -15412,6 +16021,7 @@ export namespace sqladmin_v1beta4 { * * // Example response * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -15565,6 +16175,7 @@ export namespace sqladmin_v1beta4 { * requestBody: { * // request body parameters * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -15879,6 +16490,8 @@ export namespace sqladmin_v1beta4 { * * // Do the magic * const res = await sql.users.update({ + * // Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request. + * databaseRoles: 'placeholder-value', * // Optional. Host of the user in the instance. * host: 'placeholder-value', * // Database instance ID. This does not include the project ID. @@ -15887,11 +16500,14 @@ export namespace sqladmin_v1beta4 { * name: 'placeholder-value', * // Project ID of the project that contains the instance. * project: 'placeholder-value', + * // Optional. revoke the existing roles granted to the user. + * revokeExistingRoles: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "databaseRoles": [], * // "dualPasswordType": "my_dualPasswordType", * // "etag": "my_etag", * // "host": "my_host", @@ -16092,6 +16708,10 @@ export namespace sqladmin_v1beta4 { project?: string; } export interface Params$Resource$Users$Update extends StandardParameters { + /** + * Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request. + */ + databaseRoles?: string[]; /** * Optional. Host of the user in the instance. */ @@ -16108,6 +16728,10 @@ export namespace sqladmin_v1beta4 { * Project ID of the project that contains the instance. */ project?: string; + /** + * Optional. revoke the existing roles granted to the user. + */ + revokeExistingRoles?: boolean; /** * Request body metadata