diff --git a/androidpublisher/v3/androidpublisher-api.json b/androidpublisher/v3/androidpublisher-api.json index d1dd62b4aae..f31a1a6c39c 100644 --- a/androidpublisher/v3/androidpublisher-api.json +++ b/androidpublisher/v3/androidpublisher-api.json @@ -4279,6 +4279,11 @@ "location": "query", "type": "string" }, + "includeQuantityBasedPartialRefund": { + "description": "Optional. Whether to include voided purchases of quantity-based partial refunds, which are applicable only to multi-quantity purchases. If true, additional voided purchases may be returned with voidedQuantity that indicates the refund quantity of a quantity-based partial refund. The default value is false.", + "location": "query", + "type": "boolean" + }, "maxResults": { "description": "Defines how many results the list operation should return. The default number depends on the resource collection.", "format": "uint32", @@ -4726,7 +4731,7 @@ } } }, - "revision": "20240318", + "revision": "20240319", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -9744,6 +9749,11 @@ "description": "The token which uniquely identifies a one-time purchase or subscription. To uniquely identify subscription renewals use order_id (available starting from version 3 of the API).", "type": "string" }, + "voidedQuantity": { + "description": "The voided quantity as the result of a quantity-based partial refund. Voided purchases of quantity-based partial refunds may only be returned when includeQuantityBasedPartialRefund is set to true.", + "format": "int32", + "type": "integer" + }, "voidedReason": { "description": "The reason why the purchase was voided, possible values are: 0. Other 1. Remorse 2. Not_received 3. Defective 4. Accidental_purchase 5. Fraud 6. Friendly_fraud 7. Chargeback", "format": "int32", diff --git a/androidpublisher/v3/androidpublisher-gen.go b/androidpublisher/v3/androidpublisher-gen.go index f2e58ff5bce..ef075167707 100644 --- a/androidpublisher/v3/androidpublisher-gen.go +++ b/androidpublisher/v3/androidpublisher-gen.go @@ -9251,6 +9251,12 @@ type VoidedPurchase struct { // use order_id (available starting from version 3 of the API). PurchaseToken string `json:"purchaseToken,omitempty"` + // VoidedQuantity: The voided quantity as the result of a quantity-based + // partial refund. Voided purchases of quantity-based partial refunds + // may only be returned when includeQuantityBasedPartialRefund is set to + // true. + VoidedQuantity int64 `json:"voidedQuantity,omitempty"` + // VoidedReason: The reason why the purchase was voided, possible values // are: 0. Other 1. Remorse 2. Not_received 3. Defective 4. // Accidental_purchase 5. Fraud 6. Friendly_fraud 7. Chargeback @@ -26433,6 +26439,18 @@ func (c *PurchasesVoidedpurchasesListCall) EndTime(endTime int64) *PurchasesVoid return c } +// IncludeQuantityBasedPartialRefund sets the optional parameter +// "includeQuantityBasedPartialRefund": Whether to include voided +// purchases of quantity-based partial refunds, which are applicable +// only to multi-quantity purchases. If true, additional voided +// purchases may be returned with voidedQuantity that indicates the +// refund quantity of a quantity-based partial refund. The default value +// is false. +func (c *PurchasesVoidedpurchasesListCall) IncludeQuantityBasedPartialRefund(includeQuantityBasedPartialRefund bool) *PurchasesVoidedpurchasesListCall { + c.urlParams_.Set("includeQuantityBasedPartialRefund", fmt.Sprint(includeQuantityBasedPartialRefund)) + return c +} + // MaxResults sets the optional parameter "maxResults": Defines how many // results the list operation should return. The default number depends // on the resource collection. @@ -26597,6 +26615,11 @@ func (c *PurchasesVoidedpurchasesListCall) Do(opts ...googleapi.CallOption) (*Vo // "location": "query", // "type": "string" // }, + // "includeQuantityBasedPartialRefund": { + // "description": "Optional. Whether to include voided purchases of quantity-based partial refunds, which are applicable only to multi-quantity purchases. If true, additional voided purchases may be returned with voidedQuantity that indicates the refund quantity of a quantity-based partial refund. The default value is false.", + // "location": "query", + // "type": "boolean" + // }, // "maxResults": { // "description": "Defines how many results the list operation should return. The default number depends on the resource collection.", // "format": "uint32", diff --git a/api-list.json b/api-list.json index 4d4c7657eae..afb486ac7c9 100644 --- a/api-list.json +++ b/api-list.json @@ -3942,7 +3942,7 @@ "name": "marketingplatformadmin", "version": "v1alpha", "title": "Google Marketing Platform Admin API", - "description": "marketingplatformadmin.googleapis.com API.", + "description": "The Google Marketing Platform Admin API allows for programmatic access to the Google Marketing Platform configuration data. You can use the Google Marketing Platform Admin API to manage links between your Google Marketing Platform organization and Google Analytics accounts, set the service level of your GA4 properties.", "discoveryRestUrl": "https://marketingplatformadmin.googleapis.com/$discovery/rest?version=v1alpha", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -5824,7 +5824,7 @@ "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "documentationLink": "https://developers.google.com/cloud-test-lab/", + "documentationLink": "https://firebase.google.com/docs/test-lab/", "preferred": true }, { diff --git a/apigee/v1/apigee-api.json b/apigee/v1/apigee-api.json index bd7918619db..bf784455651 100644 --- a/apigee/v1/apigee-api.json +++ b/apigee/v1/apigee-api.json @@ -10013,7 +10013,7 @@ } } }, - "revision": "20240312", + "revision": "20240318", "rootUrl": "https://apigee.googleapis.com/", "schemas": { "EdgeConfigstoreBundleBadBundle": { @@ -10115,6 +10115,21 @@ }, "type": "object" }, + "GoogleCloudApigeeV1AccessLoggingConfig": { + "description": "Access logging configuration enables customers to ship the access logs from the tenant projects to their own project's cloud logging. The feature is at the instance level ad disabled by default. It can be enabled during CreateInstance or UpdateInstance.", + "id": "GoogleCloudApigeeV1AccessLoggingConfig", + "properties": { + "enabled": { + "description": "Optional. Boolean flag that specifies whether the customer access log feature is enabled.", + "type": "boolean" + }, + "filter": { + "description": "Optional. Ship the access log entries that match the status_code defined in the filter. The status_code is the only expected/supported filter field. (Ex: status_code) The filter will parse it to the Common Expression Language semantics for expression evaluation to build the filter condition. (Ex: \"filter\": status_code \u003e= 200 \u0026\u0026 status_code \u003c 300 )", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1AccessRemove": { "description": "Remove action. For example, \"Remove\" : { \"name\" : \"target.name\", \"success\" : true }", "id": "GoogleCloudApigeeV1AccessRemove", @@ -13583,6 +13598,10 @@ "description": "Apigee runtime instance.", "id": "GoogleCloudApigeeV1Instance", "properties": { + "accessLoggingConfig": { + "$ref": "GoogleCloudApigeeV1AccessLoggingConfig", + "description": "Optional. Access logging configuration enables the access logging feature at the instance. Apigee customers can enable access logging to ship the access logs to their own project's cloud logging." + }, "consumerAcceptList": { "description": "Optional. Customer accept list represents the list of projects (id/number) on customer side that can privately connect to the service attachment. It is an optional field which the customers can provide during the instance creation. By default, the customer project associated with the Apigee organization will be included to the list.", "items": { diff --git a/apigee/v1/apigee-gen.go b/apigee/v1/apigee-gen.go index dd568c31c8f..a3cb32cf0c5 100644 --- a/apigee/v1/apigee-gen.go +++ b/apigee/v1/apigee-gen.go @@ -1433,6 +1433,47 @@ func (s *GoogleCloudApigeeV1AccessGet) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudApigeeV1AccessLoggingConfig: Access logging configuration +// enables customers to ship the access logs from the tenant projects to +// their own project's cloud logging. The feature is at the instance +// level ad disabled by default. It can be enabled during CreateInstance +// or UpdateInstance. +type GoogleCloudApigeeV1AccessLoggingConfig struct { + // Enabled: Optional. Boolean flag that specifies whether the customer + // access log feature is enabled. + Enabled bool `json:"enabled,omitempty"` + + // Filter: Optional. Ship the access log entries that match the + // status_code defined in the filter. The status_code is the only + // expected/supported filter field. (Ex: status_code) The filter will + // parse it to the Common Expression Language semantics for expression + // evaluation to build the filter condition. (Ex: "filter": status_code + // >= 200 && status_code < 300 ) + Filter string `json:"filter,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Enabled") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enabled") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudApigeeV1AccessLoggingConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1AccessLoggingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudApigeeV1AccessRemove: Remove action. For example, "Remove" // : { "name" : "target.name", "success" : true } type GoogleCloudApigeeV1AccessRemove struct { @@ -6434,6 +6475,12 @@ func (s *GoogleCloudApigeeV1IngressConfig) MarshalJSON() ([]byte, error) { // GoogleCloudApigeeV1Instance: Apigee runtime instance. type GoogleCloudApigeeV1Instance struct { + // AccessLoggingConfig: Optional. Access logging configuration enables + // the access logging feature at the instance. Apigee customers can + // enable access logging to ship the access logs to their own project's + // cloud logging. + AccessLoggingConfig *GoogleCloudApigeeV1AccessLoggingConfig `json:"accessLoggingConfig,omitempty"` + // ConsumerAcceptList: Optional. Customer accept list represents the // list of projects (id/number) on customer side that can privately // connect to the service attachment. It is an optional field which the @@ -6533,7 +6580,7 @@ type GoogleCloudApigeeV1Instance struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ConsumerAcceptList") + // ForceSendFields is a list of field names (e.g. "AccessLoggingConfig") // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -6541,7 +6588,7 @@ type GoogleCloudApigeeV1Instance struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ConsumerAcceptList") to + // NullFields is a list of field names (e.g. "AccessLoggingConfig") to // include in API requests with the JSON null value. By default, fields // with empty values are omitted from API requests. However, any field // with an empty value appearing in NullFields will be sent to the diff --git a/clouderrorreporting/v1beta1/clouderrorreporting-api.json b/clouderrorreporting/v1beta1/clouderrorreporting-api.json index 55825afe25d..4d0e65484c9 100644 --- a/clouderrorreporting/v1beta1/clouderrorreporting-api.json +++ b/clouderrorreporting/v1beta1/clouderrorreporting-api.json @@ -214,7 +214,7 @@ ] }, "report": { - "description": "Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API key](https://support.google.com/cloud/answer/6158862) for authentication. To use an API key, append it to the URL as the value of a `key` parameter. For example: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets or logs routed to other Google Cloud projects.", + "description": "Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API key](https://support.google.com/cloud/answer/6158862) for authentication. To use an API key, append it to the URL as the value of a `key` parameter. For example: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets.", "flatPath": "v1beta1/projects/{projectsId}/events:report", "httpMethod": "POST", "id": "clouderrorreporting.projects.events.report", @@ -431,7 +431,7 @@ } } }, - "revision": "20231106", + "revision": "20240315", "rootUrl": "https://clouderrorreporting.googleapis.com/", "schemas": { "DeleteEventsResponse": { diff --git a/clouderrorreporting/v1beta1/clouderrorreporting-gen.go b/clouderrorreporting/v1beta1/clouderrorreporting-gen.go index 79f05dc352c..4d67d835d7d 100644 --- a/clouderrorreporting/v1beta1/clouderrorreporting-gen.go +++ b/clouderrorreporting/v1beta1/clouderrorreporting-gen.go @@ -1308,7 +1308,7 @@ type ProjectsEventsReportCall struct { // **Note:** [Error Reporting] // (https://cloud.google.com/error-reporting) is a global service built // on Cloud Logging and doesn't analyze logs stored in regional log -// buckets or logs routed to other Google Cloud projects. +// buckets. // // - projectName: The resource name of the Google Cloud Platform // project. Written as `projects/{projectId}`, where `{projectId}` is @@ -1413,7 +1413,7 @@ func (c *ProjectsEventsReportCall) Do(opts ...googleapi.CallOption) (*ReportErro } return ret, nil // { - // "description": "Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API key](https://support.google.com/cloud/answer/6158862) for authentication. To use an API key, append it to the URL as the value of a `key` parameter. For example: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets or logs routed to other Google Cloud projects.", + // "description": "Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API key](https://support.google.com/cloud/answer/6158862) for authentication. To use an API key, append it to the URL as the value of a `key` parameter. For example: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets.", // "flatPath": "v1beta1/projects/{projectsId}/events:report", // "httpMethod": "POST", // "id": "clouderrorreporting.projects.events.report", diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index 82f12424925..27893a97d26 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -43897,7 +43897,7 @@ } } }, - "revision": "20240227", + "revision": "20240305", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -47172,25 +47172,6 @@ "description": "If true, enables Cloud CDN for the backend service of a global external Application Load Balancer.", "type": "boolean" }, - "externalManagedMigrationState": { - "description": "Specifies the canary migration state. Possible values are PREPARE, TEST, and FINALIZE. To begin the migration from EXTERNAL to EXTERNAL_MANAGED, the state must be changed to PREPARE. The state must be changed to FINALIZE before the loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, the TEST state can be used to migrate traffic by percentage using externalManagedMigrationTestingRate. Rolling back a migration requires the states to be set in reverse order. So changing the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to be set to FINALIZE at the same time. Optionally, the TEST state can be used to migrate some traffic back to EXTERNAL or PREPARE can be used to migrate all traffic back to EXTERNAL.", - "enum": [ - "FINALIZE", - "PREPARE", - "TEST" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" - }, - "externalManagedMigrationTestingRate": { - "description": "Determines the fraction of requests that should be processed by the Global external Application Load Balancer. The value of this field must be in the range [0, 1]. For example: - A value of 0 will send all requests through the Classic ALB for the given resource. - A value of .001 will send .1% of requests through the Global external ALB for the given resource. - A value of .01 will send 1% of requests through the Global external ALB for the given resource. - A value of 1 will send all requests through the Global external ALB for the given resource. Session affinity options will slightly affect this routing behavior, for more details, see: Session Affinity. This value is only used if the loadBalancingScheme in the BackendService is set to EXTERNAL when using the classic Application Load Balancer.", - "format": "float", - "type": "number" - }, "failoverPolicy": { "$ref": "BackendServiceFailoverPolicy", "description": "Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external passthrough Network Load Balancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview)." @@ -49996,7 +49977,7 @@ "type": "array" }, "allowOriginRegexes": { - "description": "Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.", + "description": "Specifies a regular expression that matches allowed origins. For more information, see regular expression syntax . An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.", "items": { "type": "string" }, @@ -50010,7 +49991,7 @@ "type": "array" }, "disabled": { - "description": "If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.", + "description": "If true, disables the CORS policy. The default value is false, which indicates that the CORS policy is in effect.", "type": "boolean" }, "exposeHeaders": { @@ -54652,6 +54633,35 @@ }, "type": "object" }, + "GRPCTLSHealthCheck": { + "id": "GRPCTLSHealthCheck", + "properties": { + "grpcServiceName": { + "description": "The gRPC service name for the health check. This field is optional. The value of grpc_service_name has the following meanings by convention: - Empty service_name means the overall status of all services at the backend. - Non-empty service_name means the health of that gRPC service, as defined by the owner of the service. The grpc_service_name can only be ASCII.", + "type": "string" + }, + "port": { + "description": "The TCP port number to which the health check prober sends packets. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the following values: USE_FIXED_PORT: Specifies a port number explicitly using the port field in the health check. Supported by backend services for passthrough load balancers and backend services for proxy load balancers. Not supported by target pools. The health check supports all backends supported by the backend service provided the backend can be health checked. For example, GCE_VM_IP network endpoint groups, GCE_VM_IP_PORT network endpoint groups, and instance group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an indirect method of specifying the health check port by referring to the backend service. Only supported by backend services for proxy load balancers. Not supported by target pools. Not supported by backend services for passthrough load balancers. Supports all backends that can be health checked; for example, GCE_VM_IP_PORT network endpoint groups and instance group backends. For GCE_VM_IP_PORT network endpoint group backends, the health check uses the port number specified for each endpoint in the network endpoint group. For instance group backends, the health check uses the port number determined by looking up the backend service's named port in the instance group's list of named ports.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in the health check's port is used for health checking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number specified on each endpoint in the network endpoint group. For instance group backends, the health check uses the port number specified for the backend service's named port defined in the instance group's named ports." + ], + "type": "string" + } + }, + "type": "object" + }, "GetOwnerInstanceResponse": { "id": "GetOwnerInstanceResponse", "properties": { @@ -55111,6 +55121,9 @@ "grpcHealthCheck": { "$ref": "GRPCHealthCheck" }, + "grpcTlsHealthCheck": { + "$ref": "GRPCTLSHealthCheck" + }, "healthyThreshold": { "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", "format": "int32", @@ -59358,7 +59371,8 @@ "id": "InstanceGroupManagerResizeRequest", "properties": { "count": { - "description": "The count of instances to create as part of this resize request.", + "deprecated": true, + "description": "This field is deprecated, please use resize_by instead. The count of instances to create as part of this resize request.", "format": "int32", "type": "integer" }, @@ -59392,7 +59406,8 @@ }, "queuingPolicy": { "$ref": "QueuingPolicy", - "description": "When set, defines queing parameters for the requested deferred capacity. When unset, the request starts provisioning immediately, or fails if immediate provisioning is not possible." + "deprecated": true, + "description": "This field is deprecated, ResizeRequests would not be provisioned immediately and would stay in the queue until explicitly cancelled. When set, defines queing parameters for the requested deferred capacity. When unset, the request starts provisioning immediately, or fails if immediate provisioning is not possible." }, "requestedRunDuration": { "$ref": "Duration", @@ -59420,15 +59435,27 @@ "DELETING", "FAILED", "PROVISIONING", + "STATE_UNSPECIFIED", "SUCCEEDED" ], + "enumDeprecated": [ + false, + false, + false, + true, + false, + true, + false, + false + ], "enumDescriptions": [ "The request was created successfully and was accepted for provisioning when the capacity becomes available.", "The request is cancelled.", - "resize request is being created and may still fail creation.", - "The request is being deleted.", + "Resize request is being created and may still fail creation.", + "The value is deprecated. ResizeRequests would not change state while being deleted. The request is being deleted.", "The request failed before or during provisioning. If the request fails during provisioning, any VMs that were created during provisioning are rolled back and removed from the MIG.", - "The target resource(s) are being provisioned.", + "The value is deprecated. ResizeRequests would stay in the ACCEPTED state during provisioning attempts. The target resource(s) are being provisioned.", + "Default value. This value should never be returned.", "The request succeeded." ], "type": "string" @@ -59501,7 +59528,8 @@ }, "queuingPolicy": { "$ref": "QueuingPolicy", - "description": "Constraints for the time when the instances start provisioning. Always exposed as absolute time." + "deprecated": true, + "description": "This field is deprecated, setting queueing policy is no longer supported. Constraints for the time when the instances start provisioning. Always exposed as absolute time." } }, "type": "object" @@ -67682,6 +67710,10 @@ ], "type": "string" }, + "networkPlacement": { + "description": "A full or partial URL of the network placement to apply to this network. This field can be set only at resource creation time. For example, the following are valid URLs: - https://www.googleapis.com/compute/alpha/projects/{project_id}/global/networkPlacements/{network_placement_name} - projects/{project_id}/global/networkPlacements/{network_placement_name} ", + "type": "string" + }, "peerings": { "description": "[Output Only] A list of network peerings for the resource.", "items": { @@ -77068,6 +77100,127 @@ "description": "[Output Only] Name of the resource.", "type": "string" }, + "quotaStatusWarning": { + "description": "[Output Only] Warning of fetching the `quotas` field for this region. This field is populated only if fetching of the `quotas` field fails.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is not of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed which captures the amount of resources filtered out by user-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an ipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, "quotas": { "description": "[Output Only] Quotas assigned to this region.", "items": { @@ -78656,7 +78809,7 @@ "type": "array" }, "type": { - "description": "[Output Only] The type of the firewall policy. Can be one of HIERARCHY, NETWORK, NETWORK_REGIONAL.", + "description": "[Output Only] The type of the firewall policy. Can be one of HIERARCHY, NETWORK, NETWORK_REGIONAL, SYSTEM_GLOBAL, SYSTEM_REGIONAL.", "enum": [ "HIERARCHY", "NETWORK", diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index d7468c053a2..57c27f2b53a 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -6195,40 +6195,6 @@ type BackendService struct { // global external Application Load Balancer. EnableCDN bool `json:"enableCDN,omitempty"` - // ExternalManagedMigrationState: Specifies the canary migration state. - // Possible values are PREPARE, TEST, and FINALIZE. To begin the - // migration from EXTERNAL to EXTERNAL_MANAGED, the state must be - // changed to PREPARE. The state must be changed to FINALIZE before the - // loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, - // the TEST state can be used to migrate traffic by percentage using - // externalManagedMigrationTestingRate. Rolling back a migration - // requires the states to be set in reverse order. So changing the - // scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to be set - // to FINALIZE at the same time. Optionally, the TEST state can be used - // to migrate some traffic back to EXTERNAL or PREPARE can be used to - // migrate all traffic back to EXTERNAL. - // - // Possible values: - // "FINALIZE" - // "PREPARE" - // "TEST" - ExternalManagedMigrationState string `json:"externalManagedMigrationState,omitempty"` - - // ExternalManagedMigrationTestingRate: Determines the fraction of - // requests that should be processed by the Global external Application - // Load Balancer. The value of this field must be in the range [0, 1]. - // For example: - A value of 0 will send all requests through the - // Classic ALB for the given resource. - A value of .001 will send .1% - // of requests through the Global external ALB for the given resource. - - // A value of .01 will send 1% of requests through the Global external - // ALB for the given resource. - A value of 1 will send all requests - // through the Global external ALB for the given resource. Session - // affinity options will slightly affect this routing behavior, for more - // details, see: Session Affinity. This value is only used if the - // loadBalancingScheme in the BackendService is set to EXTERNAL when - // using the classic Application Load Balancer. - ExternalManagedMigrationTestingRate float64 `json:"externalManagedMigrationTestingRate,omitempty"` - // FailoverPolicy: Requires at least one backend instance group to be // defined as a backup (failover) backend. For load balancers that have // configurable failover: Internal passthrough Network Load Balancers @@ -6631,20 +6597,6 @@ func (s *BackendService) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -func (s *BackendService) UnmarshalJSON(data []byte) error { - type NoMethod BackendService - var s1 struct { - ExternalManagedMigrationTestingRate gensupport.JSONFloat64 `json:"externalManagedMigrationTestingRate"` - *NoMethod - } - s1.NoMethod = (*NoMethod)(s) - if err := json.Unmarshal(data, &s1); err != nil { - return err - } - s.ExternalManagedMigrationTestingRate = float64(s1.ExternalManagedMigrationTestingRate) - return nil -} - // BackendServiceAggregatedList: Contains a list of // BackendServicesScopedList. type BackendServiceAggregatedList struct { @@ -10368,11 +10320,10 @@ type CorsPolicy struct { AllowMethods []string `json:"allowMethods,omitempty"` // AllowOriginRegexes: Specifies a regular expression that matches - // allowed origins. For more information about the regular expression - // syntax, see Syntax. An origin is allowed if it matches either an item - // in allowOrigins or an item in allowOriginRegexes. Regular expressions - // can only be used when the loadBalancingScheme is set to - // INTERNAL_SELF_MANAGED. + // allowed origins. For more information, see regular expression syntax + // . An origin is allowed if it matches either an item in allowOrigins + // or an item in allowOriginRegexes. Regular expressions can only be + // used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED. AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty"` // AllowOrigins: Specifies the list of origins that is allowed to do @@ -10380,9 +10331,8 @@ type CorsPolicy struct { // allowOrigins or an item in allowOriginRegexes. AllowOrigins []string `json:"allowOrigins,omitempty"` - // Disabled: If true, the setting specifies the CORS policy is disabled. - // The default value of false, which indicates that the CORS policy is - // in effect. + // Disabled: If true, disables the CORS policy. The default value is + // false, which indicates that the CORS policy is in effect. Disabled bool `json:"disabled,omitempty"` // ExposeHeaders: Specifies the content for the @@ -17141,6 +17091,77 @@ func (s *GRPCHealthCheck) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type GRPCTLSHealthCheck struct { + // GrpcServiceName: The gRPC service name for the health check. This + // field is optional. The value of grpc_service_name has the following + // meanings by convention: - Empty service_name means the overall status + // of all services at the backend. - Non-empty service_name means the + // health of that gRPC service, as defined by the owner of the service. + // The grpc_service_name can only be ASCII. + GrpcServiceName string `json:"grpcServiceName,omitempty"` + + // Port: The TCP port number to which the health check prober sends + // packets. Valid values are 1 through 65535. + Port int64 `json:"port,omitempty"` + + // PortSpecification: Specifies how a port is selected for health + // checking. Can be one of the following values: USE_FIXED_PORT: + // Specifies a port number explicitly using the port field in the health + // check. Supported by backend services for passthrough load balancers + // and backend services for proxy load balancers. Not supported by + // target pools. The health check supports all backends supported by the + // backend service provided the backend can be health checked. For + // example, GCE_VM_IP network endpoint groups, GCE_VM_IP_PORT network + // endpoint groups, and instance group backends. USE_NAMED_PORT: Not + // supported. USE_SERVING_PORT: Provides an indirect method of + // specifying the health check port by referring to the backend service. + // Only supported by backend services for proxy load balancers. Not + // supported by target pools. Not supported by backend services for + // passthrough load balancers. Supports all backends that can be health + // checked; for example, GCE_VM_IP_PORT network endpoint groups and + // instance group backends. For GCE_VM_IP_PORT network endpoint group + // backends, the health check uses the port number specified for each + // endpoint in the network endpoint group. For instance group backends, + // the health check uses the port number determined by looking up the + // backend service's named port in the instance group's list of named + // ports. + // + // Possible values: + // "USE_FIXED_PORT" - The port number in the health check's port is + // used for health checking. Applies to network endpoint group and + // instance group backends. + // "USE_NAMED_PORT" - Not supported. + // "USE_SERVING_PORT" - For network endpoint group backends, the + // health check uses the port number specified on each endpoint in the + // network endpoint group. For instance group backends, the health check + // uses the port number specified for the backend service's named port + // defined in the instance group's named ports. + PortSpecification string `json:"portSpecification,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GrpcServiceName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "GrpcServiceName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GRPCTLSHealthCheck) MarshalJSON() ([]byte, error) { + type NoMethod GRPCTLSHealthCheck + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type GetOwnerInstanceResponse struct { // Instance: Full instance resource URL. Instance string `json:"instance,omitempty"` @@ -17935,6 +17956,8 @@ type HealthCheck struct { GrpcHealthCheck *GRPCHealthCheck `json:"grpcHealthCheck,omitempty"` + GrpcTlsHealthCheck *GRPCTLSHealthCheck `json:"grpcTlsHealthCheck,omitempty"` + // HealthyThreshold: A so-far unhealthy instance will be marked healthy // after this many consecutive successes. The default value is 2. HealthyThreshold int64 `json:"healthyThreshold,omitempty"` @@ -23882,8 +23905,8 @@ func (s *InstanceGroupManagerParams) MarshalJSON() ([]byte, error) { // nested under InstanceGroupManager and the VMs created by this request // are added to the owning InstanceGroupManager. type InstanceGroupManagerResizeRequest struct { - // Count: The count of instances to create as part of this resize - // request. + // Count: This field is deprecated, please use resize_by instead. The + // count of instances to create as part of this resize request. Count int64 `json:"count,omitempty"` // CreationTimestamp: [Output Only] The creation timestamp for this @@ -23905,7 +23928,9 @@ type InstanceGroupManagerResizeRequest struct { // characters long, and comply with RFC1035. Name string `json:"name,omitempty"` - // QueuingPolicy: When set, defines queing parameters for the requested + // QueuingPolicy: This field is deprecated, ResizeRequests would not be + // provisioned immediately and would stay in the queue until explicitly + // cancelled. When set, defines queing parameters for the requested // deferred capacity. When unset, the request starts provisioning // immediately, or fails if immediate provisioning is not possible. QueuingPolicy *QueuingPolicy `json:"queuingPolicy,omitempty"` @@ -23933,13 +23958,18 @@ type InstanceGroupManagerResizeRequest struct { // "ACCEPTED" - The request was created successfully and was accepted // for provisioning when the capacity becomes available. // "CANCELLED" - The request is cancelled. - // "CREATING" - resize request is being created and may still fail + // "CREATING" - Resize request is being created and may still fail // creation. - // "DELETING" - The request is being deleted. + // "DELETING" - The value is deprecated. ResizeRequests would not + // change state while being deleted. The request is being deleted. // "FAILED" - The request failed before or during provisioning. If the // request fails during provisioning, any VMs that were created during // provisioning are rolled back and removed from the MIG. - // "PROVISIONING" - The target resource(s) are being provisioned. + // "PROVISIONING" - The value is deprecated. ResizeRequests would stay + // in the ACCEPTED state during provisioning attempts. The target + // resource(s) are being provisioned. + // "STATE_UNSPECIFIED" - Default value. This value should never be + // returned. // "SUCCEEDED" - The request succeeded. State string `json:"state,omitempty"` @@ -23996,8 +24026,9 @@ type InstanceGroupManagerResizeRequestStatus struct { // the "error" field only. LastAttempt *InstanceGroupManagerResizeRequestStatusLastAttempt `json:"lastAttempt,omitempty"` - // QueuingPolicy: Constraints for the time when the instances start - // provisioning. Always exposed as absolute time. + // QueuingPolicy: This field is deprecated, setting queueing policy is + // no longer supported. Constraints for the time when the instances + // start provisioning. Always exposed as absolute time. QueuingPolicy *QueuingPolicy `json:"queuingPolicy,omitempty"` // ForceSendFields is a list of field names (e.g. "Error") to @@ -35952,6 +35983,15 @@ type Network struct { // "BEFORE_CLASSIC_FIREWALL" NetworkFirewallPolicyEnforcementOrder string `json:"networkFirewallPolicyEnforcementOrder,omitempty"` + // NetworkPlacement: A full or partial URL of the network placement to + // apply to this network. This field can be set only at resource + // creation time. For example, the following are valid URLs: - + // https://www.googleapis.com/compute/alpha/projects/{project_id}/global/networkPlacements/{network_placement_name} + // - + // projects/{project_id}/global/networkPlacements/{network_placement_name + // } + NetworkPlacement string `json:"networkPlacement,omitempty"` + // Peerings: [Output Only] A list of network peerings for the resource. Peerings []*NetworkPeering `json:"peerings,omitempty"` @@ -48403,6 +48443,11 @@ type Region struct { // Name: [Output Only] Name of the resource. Name string `json:"name,omitempty"` + // QuotaStatusWarning: [Output Only] Warning of fetching the `quotas` + // field for this region. This field is populated only if fetching of + // the `quotas` field fails. + QuotaStatusWarning *RegionQuotaStatusWarning `json:"quotaStatusWarning,omitempty"` + // Quotas: [Output Only] Quotas assigned to this region. Quotas []*Quota `json:"quotas,omitempty"` @@ -48455,6 +48500,146 @@ func (s *Region) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RegionQuotaStatusWarning: [Output Only] Warning of fetching the +// `quotas` field for this region. This field is populated only if +// fetching of the `quotas` field fails. +type RegionQuotaStatusWarning struct { + // Code: [Output Only] A warning code, if applicable. For example, + // Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in + // the response. + // + // Possible values: + // "CLEANUP_FAILED" - Warning about failed cleanup of transient + // changes made by a failed operation. + // "DEPRECATED_RESOURCE_USED" - A link to a deprecated resource was + // created. + // "DEPRECATED_TYPE_USED" - When deploying and at least one of the + // resources has a type marked as deprecated + // "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" - The user created a boot disk + // that is larger than image size. + // "EXPERIMENTAL_TYPE_USED" - When deploying and at least one of the + // resources has a type marked as experimental + // "EXTERNAL_API_WARNING" - Warning that is present in an external api + // call + // "FIELD_VALUE_OVERRIDEN" - Warning that value of a field has been + // overridden. Deprecated unused field. + // "INJECTED_KERNELS_DEPRECATED" - The operation involved use of an + // injected kernel, which is deprecated. + // "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB" - A WEIGHTED_MAGLEV + // backend service is associated with a health check that is not of type + // HTTP/HTTPS/HTTP2. + // "LARGE_DEPLOYMENT_WARNING" - When deploying a deployment with a + // exceedingly large number of resources + // "LIST_OVERHEAD_QUOTA_EXCEED" - Resource can't be retrieved due to + // list overhead quota exceed which captures the amount of resources + // filtered out by user-defined list filter. + // "MISSING_TYPE_DEPENDENCY" - A resource depends on a missing type + // "NEXT_HOP_ADDRESS_NOT_ASSIGNED" - The route's nextHopIp address is + // not assigned to an instance on the network. + // "NEXT_HOP_CANNOT_IP_FORWARD" - The route's next hop instance cannot + // ip forward. + // "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE" - The route's + // nextHopInstance URL refers to an instance that does not have an ipv6 + // interface on the same network as the route. + // "NEXT_HOP_INSTANCE_NOT_FOUND" - The route's nextHopInstance URL + // refers to an instance that does not exist. + // "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" - The route's nextHopInstance + // URL refers to an instance that is not on the same network as the + // route. + // "NEXT_HOP_NOT_RUNNING" - The route's next hop instance does not + // have a status of RUNNING. + // "NOT_CRITICAL_ERROR" - Error which is not critical. We decided to + // continue the process despite the mentioned error. + // "NO_RESULTS_ON_PAGE" - No results are present on a particular list + // page. + // "PARTIAL_SUCCESS" - Success is reported, but some results may be + // missing due to errors + // "REQUIRED_TOS_AGREEMENT" - The user attempted to use a resource + // that requires a TOS they have not accepted. + // "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING" - Warning that a + // resource is in use. + // "RESOURCE_NOT_DELETED" - One or more of the resources set to + // auto-delete could not be deleted because they were in use. + // "SCHEMA_VALIDATION_IGNORED" - When a resource schema validation is + // ignored. + // "SINGLE_INSTANCE_PROPERTY_TEMPLATE" - Instance template used in + // instance group manager is valid as such, but its application does not + // make a lot of sense, because it allows only single instance in + // instance group. + // "UNDECLARED_PROPERTIES" - When undeclared properties in the schema + // are present + // "UNREACHABLE" - A given scope cannot be reached. + Code string `json:"code,omitempty"` + + // Data: [Output Only] Metadata about this warning in key: value format. + // For example: "data": [ { "key": "scope", "value": "zones/us-east1-d" + // } + Data []*RegionQuotaStatusWarningData `json:"data,omitempty"` + + // Message: [Output Only] A human-readable description of the warning + // code. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionQuotaStatusWarning) MarshalJSON() ([]byte, error) { + type NoMethod RegionQuotaStatusWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type RegionQuotaStatusWarningData struct { + // Key: [Output Only] A key that provides more detail on the warning + // being returned. For example, for warnings where there are no results + // in a list request for a particular zone, this key might be scope and + // the key value might be the zone name. Other examples might be a key + // indicating a deprecated resource and a suggested replacement, or a + // warning about invalid network settings (for example, if an instance + // attempts to perform IP forwarding but is not enabled for IP + // forwarding). + Key string `json:"key,omitempty"` + + // Value: [Output Only] A warning data value corresponding to the key. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RegionQuotaStatusWarningData) MarshalJSON() ([]byte, error) { + type NoMethod RegionQuotaStatusWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type RegionAddressesMoveRequest struct { // Description: An optional destination address description if intended // to be different from the source. @@ -50802,7 +50987,7 @@ type RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewall Rules []*FirewallPolicyRule `json:"rules,omitempty"` // Type: [Output Only] The type of the firewall policy. Can be one of - // HIERARCHY, NETWORK, NETWORK_REGIONAL. + // HIERARCHY, NETWORK, NETWORK_REGIONAL, SYSTEM_GLOBAL, SYSTEM_REGIONAL. // // Possible values: // "HIERARCHY" diff --git a/discoveryengine/v1alpha/discoveryengine-api.json b/discoveryengine/v1alpha/discoveryengine-api.json index 6405c39b376..8d229d56b0b 100644 --- a/discoveryengine/v1alpha/discoveryengine-api.json +++ b/discoveryengine/v1alpha/discoveryengine-api.json @@ -795,6 +795,59 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getProcessedDocument": { + "description": "Gets the parsed layout information for a Document.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents/{documentsId}:getProcessedDocument", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.dataStores.branches.documents.getProcessedDocument", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Full resource name of Document, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}/documents/{document}`. If the caller does not have permission to access the Document, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested Document does not exist, a `NOT_FOUND` error is returned.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+/documents/[^/]+$", + "required": true, + "type": "string" + }, + "processedDocumentFormat": { + "description": "What format output should be. If unspecified, defaults to JSON.", + "enum": [ + "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED", + "JSON" + ], + "enumDescriptions": [ + "Default value.", + "output format will be a JSON string representation of processed document." + ], + "location": "query", + "type": "string" + }, + "processedDocumentType": { + "description": "Required. What type of processing to return.", + "enum": [ + "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED", + "PARSED_DOCUMENT", + "CHUNKED_DOCUMENT" + ], + "enumDescriptions": [ + "Default value.", + "Available for all data store parsing configs.", + "Only available if ChunkingConfig is enabeld on the data store." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}:getProcessedDocument", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaProcessedDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "import": { "description": "Bulk import of multiple Documents. Request processing may be synchronous. Non-existing items will be created. Note: It is possible for a subset of the Documents to be successfully updated.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents:import", @@ -3563,6 +3616,59 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getProcessedDocument": { + "description": "Gets the parsed layout information for a Document.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents/{documentsId}:getProcessedDocument", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.dataStores.branches.documents.getProcessedDocument", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Full resource name of Document, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}/documents/{document}`. If the caller does not have permission to access the Document, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested Document does not exist, a `NOT_FOUND` error is returned.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+/documents/[^/]+$", + "required": true, + "type": "string" + }, + "processedDocumentFormat": { + "description": "What format output should be. If unspecified, defaults to JSON.", + "enum": [ + "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED", + "JSON" + ], + "enumDescriptions": [ + "Default value.", + "output format will be a JSON string representation of processed document." + ], + "location": "query", + "type": "string" + }, + "processedDocumentType": { + "description": "Required. What type of processing to return.", + "enum": [ + "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED", + "PARSED_DOCUMENT", + "CHUNKED_DOCUMENT" + ], + "enumDescriptions": [ + "Default value.", + "Available for all data store parsing configs.", + "Only available if ChunkingConfig is enabeld on the data store." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}:getProcessedDocument", + "response": { + "$ref": "GoogleCloudDiscoveryengineV1alphaProcessedDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "import": { "description": "Bulk import of multiple Documents. Request processing may be synchronous. Non-existing items will be created. Note: It is possible for a subset of the Documents to be successfully updated.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents:import", @@ -5080,7 +5186,7 @@ } } }, - "revision": "20240312", + "revision": "20240318", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -8349,6 +8455,21 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaProcessedDocument": { + "description": "Document captures all raw metadata information of items to be recommended or searched.", + "id": "GoogleCloudDiscoveryengineV1alphaProcessedDocument", + "properties": { + "document": { + "description": "Required. Full resource name of the referenced document, in the format `projects/*/locations/*/collections/*/dataStores/*/branches/*/documents/*`.", + "type": "string" + }, + "jsonData": { + "description": "The JSON string representation of the processed document.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaPurgeDocumentsMetadata": { "description": "Metadata related to the progress of the PurgeDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaPurgeDocumentsMetadata", @@ -8984,7 +9105,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestBoostSpecConditionBoostSpec", "properties": { "boost": { - "description": "Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored.", + "description": "Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored. Only one of the (condition, boost) combination or the boost_control_spec below are set. If both are set then the global boost is ignored and the more fine-grained boost_control_spec is applied.", "format": "float", "type": "number" }, @@ -9113,6 +9234,10 @@ "description": "The number of top results to generate the summary from. If the number of results returned is less than `summaryResultCount`, the summary is generated from all of the results. At most 10 results can be used to generate a summary.", "format": "int32", "type": "integer" + }, + "useSemanticChunks": { + "description": "If true, answer will be generated from most relevant chunks from top search results. This feature will improve summary quality. Please note that with this feature enabled, not all top search results will be referenced and included in the reference list, so the citation source index only points to the search results listed in the reference list.", + "type": "boolean" } }, "type": "object" diff --git a/discoveryengine/v1alpha/discoveryengine-gen.go b/discoveryengine/v1alpha/discoveryengine-gen.go index 469cfdb295d..da6123cd179 100644 --- a/discoveryengine/v1alpha/discoveryengine-gen.go +++ b/discoveryengine/v1alpha/discoveryengine-gen.go @@ -6784,6 +6784,45 @@ func (s *GoogleCloudDiscoveryengineV1alphaPrincipal) MarshalJSON() ([]byte, erro return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDiscoveryengineV1alphaProcessedDocument: Document captures +// all raw metadata information of items to be recommended or searched. +type GoogleCloudDiscoveryengineV1alphaProcessedDocument struct { + // Document: Required. Full resource name of the referenced document, in + // the format + // `projects/*/locations/*/collections/*/dataStores/*/branches/*/document + // s/*`. + Document string `json:"document,omitempty"` + + // JsonData: The JSON string representation of the processed document. + JsonData string `json:"jsonData,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Document") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Document") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDiscoveryengineV1alphaProcessedDocument) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDiscoveryengineV1alphaProcessedDocument + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDiscoveryengineV1alphaPurgeDocumentsMetadata: Metadata // related to the progress of the PurgeDocuments operation. This will be // returned by the google.longrunning.Operation.metadata field. @@ -7944,7 +7983,10 @@ type GoogleCloudDiscoveryengineV1alphaSearchRequestBoostSpecConditionBoostSpec s // might still be shown. The document will have an upstream battle to // get a fairly high ranking, but it is not blocked out completely. // Setting to 0.0 means no boost applied. The boosting condition is - // ignored. + // ignored. Only one of the (condition, boost) combination or the + // boost_control_spec below are set. If both are set then the global + // boost is ignored and the more fine-grained boost_control_spec is + // applied. Boost float64 `json:"boost,omitempty"` // Condition: An expression which specifies a boost condition. The @@ -8213,6 +8255,14 @@ type GoogleCloudDiscoveryengineV1alphaSearchRequestContentSearchSpecSummarySpec // results. At most 10 results can be used to generate a summary. SummaryResultCount int64 `json:"summaryResultCount,omitempty"` + // UseSemanticChunks: If true, answer will be generated from most + // relevant chunks from top search results. This feature will improve + // summary quality. Please note that with this feature enabled, not all + // top search results will be referenced and included in the reference + // list, so the citation source index only points to the search results + // listed in the reference list. + UseSemanticChunks bool `json:"useSemanticChunks,omitempty"` + // ForceSendFields is a list of field names (e.g. // "IgnoreAdversarialQuery") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API @@ -16564,6 +16614,219 @@ func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetCall) Do(opts } +// method id "discoveryengine.projects.locations.collections.dataStores.branches.documents.getProcessedDocument": + +type ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetProcessedDocument: Gets the parsed layout information for a +// Document. +// +// - name: Full resource name of Document, such as +// `projects/{project}/locations/{location}/collections/{collection}/da +// taStores/{data_store}/branches/{branch}/documents/{document}`. If +// the caller does not have permission to access the Document, +// regardless of whether or not it exists, a `PERMISSION_DENIED` error +// is returned. If the requested Document does not exist, a +// `NOT_FOUND` error is returned. +func (r *ProjectsLocationsCollectionsDataStoresBranchesDocumentsService) GetProcessedDocument(name string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c := &ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ProcessedDocumentFormat sets the optional parameter +// "processedDocumentFormat": What format output should be. If +// unspecified, defaults to JSON. +// +// Possible values: +// +// "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED" - Default value. +// "JSON" - output format will be a JSON string representation of +// +// processed document. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) ProcessedDocumentFormat(processedDocumentFormat string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("processedDocumentFormat", processedDocumentFormat) + return c +} + +// ProcessedDocumentType sets the optional parameter +// "processedDocumentType": Required. What type of processing to return. +// +// Possible values: +// +// "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED" - Default value. +// "PARSED_DOCUMENT" - Available for all data store parsing configs. +// "CHUNKED_DOCUMENT" - Only available if ChunkingConfig is enabeld on +// +// the data store. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) ProcessedDocumentType(processedDocumentType string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("processedDocumentType", processedDocumentType) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) Fields(s ...googleapi.Field) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) IfNoneMatch(entityTag string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) Context(ctx context.Context) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:getProcessedDocument") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "discoveryengine.projects.locations.collections.dataStores.branches.documents.getProcessedDocument" call. +// Exactly one of *GoogleCloudDiscoveryengineV1alphaProcessedDocument or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDiscoveryengineV1alphaProcessedDocument.ServerResponse.Hea +// der or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsGetProcessedDocumentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDiscoveryengineV1alphaProcessedDocument, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDiscoveryengineV1alphaProcessedDocument{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the parsed layout information for a Document.", + // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents/{documentsId}:getProcessedDocument", + // "httpMethod": "GET", + // "id": "discoveryengine.projects.locations.collections.dataStores.branches.documents.getProcessedDocument", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Full resource name of Document, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}/documents/{document}`. If the caller does not have permission to access the Document, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested Document does not exist, a `NOT_FOUND` error is returned.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+/documents/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "processedDocumentFormat": { + // "description": "What format output should be. If unspecified, defaults to JSON.", + // "enum": [ + // "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED", + // "JSON" + // ], + // "enumDescriptions": [ + // "Default value.", + // "output format will be a JSON string representation of processed document." + // ], + // "location": "query", + // "type": "string" + // }, + // "processedDocumentType": { + // "description": "Required. What type of processing to return.", + // "enum": [ + // "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED", + // "PARSED_DOCUMENT", + // "CHUNKED_DOCUMENT" + // ], + // "enumDescriptions": [ + // "Default value.", + // "Available for all data store parsing configs.", + // "Only available if ChunkingConfig is enabeld on the data store." + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1alpha/{+name}:getProcessedDocument", + // "response": { + // "$ref": "GoogleCloudDiscoveryengineV1alphaProcessedDocument" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "discoveryengine.projects.locations.collections.dataStores.branches.documents.import": type ProjectsLocationsCollectionsDataStoresBranchesDocumentsImportCall struct { @@ -30770,6 +31033,219 @@ func (c *ProjectsLocationsDataStoresBranchesDocumentsGetCall) Do(opts ...googlea } +// method id "discoveryengine.projects.locations.dataStores.branches.documents.getProcessedDocument": + +type ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetProcessedDocument: Gets the parsed layout information for a +// Document. +// +// - name: Full resource name of Document, such as +// `projects/{project}/locations/{location}/collections/{collection}/da +// taStores/{data_store}/branches/{branch}/documents/{document}`. If +// the caller does not have permission to access the Document, +// regardless of whether or not it exists, a `PERMISSION_DENIED` error +// is returned. If the requested Document does not exist, a +// `NOT_FOUND` error is returned. +func (r *ProjectsLocationsDataStoresBranchesDocumentsService) GetProcessedDocument(name string) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c := &ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// ProcessedDocumentFormat sets the optional parameter +// "processedDocumentFormat": What format output should be. If +// unspecified, defaults to JSON. +// +// Possible values: +// +// "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED" - Default value. +// "JSON" - output format will be a JSON string representation of +// +// processed document. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) ProcessedDocumentFormat(processedDocumentFormat string) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("processedDocumentFormat", processedDocumentFormat) + return c +} + +// ProcessedDocumentType sets the optional parameter +// "processedDocumentType": Required. What type of processing to return. +// +// Possible values: +// +// "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED" - Default value. +// "PARSED_DOCUMENT" - Available for all data store parsing configs. +// "CHUNKED_DOCUMENT" - Only available if ChunkingConfig is enabeld on +// +// the data store. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) ProcessedDocumentType(processedDocumentType string) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("processedDocumentType", processedDocumentType) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) Context(ctx context.Context) *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:getProcessedDocument") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "discoveryengine.projects.locations.dataStores.branches.documents.getProcessedDocument" call. +// Exactly one of *GoogleCloudDiscoveryengineV1alphaProcessedDocument or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDiscoveryengineV1alphaProcessedDocument.ServerResponse.Hea +// der or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsLocationsDataStoresBranchesDocumentsGetProcessedDocumentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDiscoveryengineV1alphaProcessedDocument, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDiscoveryengineV1alphaProcessedDocument{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the parsed layout information for a Document.", + // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/branches/{branchesId}/documents/{documentsId}:getProcessedDocument", + // "httpMethod": "GET", + // "id": "discoveryengine.projects.locations.dataStores.branches.documents.getProcessedDocument", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Full resource name of Document, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}/documents/{document}`. If the caller does not have permission to access the Document, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested Document does not exist, a `NOT_FOUND` error is returned.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+/documents/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "processedDocumentFormat": { + // "description": "What format output should be. If unspecified, defaults to JSON.", + // "enum": [ + // "PROCESSED_DOCUMENT_FORMAT_UNSPECIFIED", + // "JSON" + // ], + // "enumDescriptions": [ + // "Default value.", + // "output format will be a JSON string representation of processed document." + // ], + // "location": "query", + // "type": "string" + // }, + // "processedDocumentType": { + // "description": "Required. What type of processing to return.", + // "enum": [ + // "PROCESSED_DOCUMENT_TYPE_UNSPECIFIED", + // "PARSED_DOCUMENT", + // "CHUNKED_DOCUMENT" + // ], + // "enumDescriptions": [ + // "Default value.", + // "Available for all data store parsing configs.", + // "Only available if ChunkingConfig is enabeld on the data store." + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1alpha/{+name}:getProcessedDocument", + // "response": { + // "$ref": "GoogleCloudDiscoveryengineV1alphaProcessedDocument" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "discoveryengine.projects.locations.dataStores.branches.documents.import": type ProjectsLocationsDataStoresBranchesDocumentsImportCall struct { diff --git a/discoveryengine/v1beta/discoveryengine-api.json b/discoveryengine/v1beta/discoveryengine-api.json index c5f3aa96e9f..2ebc8ff51b2 100644 --- a/discoveryengine/v1beta/discoveryengine-api.json +++ b/discoveryengine/v1beta/discoveryengine-api.json @@ -4477,7 +4477,7 @@ } } }, - "revision": "20240312", + "revision": "20240318", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -9068,7 +9068,7 @@ "id": "GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpec", "properties": { "boost": { - "description": "Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored.", + "description": "Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored. Only one of the (condition, boost) combination or the boost_control_spec below are set. If both are set then the global boost is ignored and the more fine-grained boost_control_spec is applied.", "format": "float", "type": "number" }, @@ -9183,6 +9183,10 @@ "description": "The number of top results to generate the summary from. If the number of results returned is less than `summaryResultCount`, the summary is generated from all of the results. At most 10 results can be used to generate a summary.", "format": "int32", "type": "integer" + }, + "useSemanticChunks": { + "description": "If true, answer will be generated from most relevant chunks from top search results. This feature will improve summary quality. Please note that with this feature enabled, not all top search results will be referenced and included in the reference list, so the citation source index only points to the search results listed in the reference list.", + "type": "boolean" } }, "type": "object" diff --git a/discoveryengine/v1beta/discoveryengine-gen.go b/discoveryengine/v1beta/discoveryengine-gen.go index 4b400ca03b6..43b5e506ab2 100644 --- a/discoveryengine/v1beta/discoveryengine-gen.go +++ b/discoveryengine/v1beta/discoveryengine-gen.go @@ -8960,7 +8960,10 @@ type GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpecConditionBoostSpec st // might still be shown. The document will have an upstream battle to // get a fairly high ranking, but it is not blocked out completely. // Setting to 0.0 means no boost applied. The boosting condition is - // ignored. + // ignored. Only one of the (condition, boost) combination or the + // boost_control_spec below are set. If both are set then the global + // boost is ignored and the more fine-grained boost_control_spec is + // applied. Boost float64 `json:"boost,omitempty"` // Condition: An expression which specifies a boost condition. The @@ -9216,6 +9219,14 @@ type GoogleCloudDiscoveryengineV1betaSearchRequestContentSearchSpecSummarySpec s // results. At most 10 results can be used to generate a summary. SummaryResultCount int64 `json:"summaryResultCount,omitempty"` + // UseSemanticChunks: If true, answer will be generated from most + // relevant chunks from top search results. This feature will improve + // summary quality. Please note that with this feature enabled, not all + // top search results will be referenced and included in the reference + // list, so the citation source index only points to the search results + // listed in the reference list. + UseSemanticChunks bool `json:"useSemanticChunks,omitempty"` + // ForceSendFields is a list of field names (e.g. // "IgnoreAdversarialQuery") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API diff --git a/iam/v1/iam-api.json b/iam/v1/iam-api.json index d1d00631df5..55219b63348 100644 --- a/iam/v1/iam-api.json +++ b/iam/v1/iam-api.json @@ -12,7 +12,7 @@ "baseUrl": "https://iam.googleapis.com/", "batchPath": "batch", "canonicalName": "Iam", - "description": "Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls. ", + "description": "Manages identity and access control for Google Cloud resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls. Enabling this API also enables the IAM Service Account Credentials API (iamcredentials.googleapis.com). However, disabling this API doesn't disable the IAM Service Account Credentials API. ", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/iam/", "fullyEncodeReservedExpansion": true, @@ -2850,7 +2850,7 @@ } } }, - "revision": "20240118", + "revision": "20240314", "rootUrl": "https://iam.googleapis.com/", "schemas": { "AccessRestrictions": { @@ -3916,6 +3916,37 @@ }, "type": "object" }, + "ReconciliationOperationMetadata": { + "description": "Operation metadata returned by the CLH during resource state reconciliation.", + "id": "ReconciliationOperationMetadata", + "properties": { + "deleteResource": { + "deprecated": true, + "description": "DEPRECATED. Use exclusive_action instead.", + "type": "boolean" + }, + "exclusiveAction": { + "description": "Excluisive action returned by the CLH.", + "enum": [ + "UNKNOWN_REPAIR_ACTION", + "DELETE", + "RETRY" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "Unknown repair action.", + "The resource has to be deleted. When using this bit, the CLH should fail the operation. DEPRECATED. Instead use DELETE_RESOURCE OperationSignal in SideChannel.", + "This resource could not be repaired but the repair should be tried again at a later time. This can happen if there is a dependency that needs to be resolved first- e.g. if a parent resource must be repaired before a child resource." + ], + "type": "string" + } + }, + "type": "object" + }, "Role": { "description": "A role in the Identity and Access Management API.", "id": "Role", @@ -3941,7 +3972,7 @@ "type": "array" }, "name": { - "description": "The name of the role. When `Role` is used in `CreateRole`, the role name must not be set. When `Role` is used in output and other input such as `UpdateRole`, the role name is the complete path. For example, `roles/logging.viewer` for predefined roles, `organizations/{ORGANIZATION_ID}/roles/my-role` for organization-level custom roles, and `projects/{PROJECT_ID}/roles/my-role` for project-level custom roles.", + "description": "The name of the role. When `Role` is used in `CreateRole`, the role name must not be set. When `Role` is used in output and other input such as `UpdateRole`, the role name is the complete path. For example, `roles/logging.viewer` for predefined roles, `organizations/{ORGANIZATION_ID}/roles/myRole` for organization-level custom roles, and `projects/{PROJECT_ID}/roles/myRole` for project-level custom roles.", "type": "string" }, "stage": { @@ -3976,7 +4007,7 @@ "id": "Saml", "properties": { "idpMetadataXml": { - "description": "Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 15 years in the future. 4) Upto 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at lease one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata", + "description": "Required. SAML identity provider (IdP) configuration metadata XML doc. The XML document must comply with the [SAML 2.0 specification](https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). The maximum size of an acceptable XML document is 128K characters. The SAML metadata XML document must satisfy the following constraints: * Must contain an IdP Entity ID. * Must contain at least one non-expired signing certificate. * For each signing certificate, the expiration must be: * From no more than 7 days in the future. * To no more than 15 years in the future. * Up to three IdP signing keys are allowed. When updating the provider's metadata XML, at least one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata.", "type": "string" } }, @@ -4417,7 +4448,7 @@ "additionalProperties": { "type": "string" }, - "description": "Required. Maps attributes from the authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. This is a required field and the mapped subject cannot exceed 127 bytes. * `google.groups`: Groups the authenticating user belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. * `google.display_name`: The name of the authenticated user. This is an optional field and the mapped display name cannot exceed 100 bytes. If not set, `google.subject` will be displayed instead. This attribute cannot be referenced in IAM bindings. * `google.profile_photo`: The URL that specifies the authenticated user's thumbnail photo. This is an optional field. When set, the image will be visible as the user's profile picture. If not set, a generic user icon will be displayed instead. This attribute cannot be referenced in IAM bindings. * `google.posix_username`: The linux username used by OS login. This is an optional field and the mapped posix username cannot exceed 32 characters, The key must match the regex \"^a-zA-Z0-9._{0,31}$\". This attribute cannot be referenced in IAM bindings. You can also provide custom attributes by specifying `attribute.{custom_attribute}`, where {custom_attribute} is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workforce pool to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/locations/global/workforcePools/{pool}/subject/{value}` * `google.groups`: `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool}/group/{value}` * `attribute.{custom_attribute}`: `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool}/attribute.{custom_attribute}/{value}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 4KB. For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {\"google.subject\": \"assertion.sub\"} ```", + "description": "Required. Maps attributes from the authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. This is a required field and the mapped subject cannot exceed 127 bytes. * `google.groups`: Groups the authenticating user belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. * `google.display_name`: The name of the authenticated user. This is an optional field and the mapped display name cannot exceed 100 bytes. If not set, `google.subject` will be displayed instead. This attribute cannot be referenced in IAM bindings. * `google.profile_photo`: The URL that specifies the authenticated user's thumbnail photo. This is an optional field. When set, the image will be visible as the user's profile picture. If not set, a generic user icon will be displayed instead. This attribute cannot be referenced in IAM bindings. * `google.posix_username`: The Linux username used by OS Login. This is an optional field and the mapped POSIX username cannot exceed 32 characters, The key must match the regex \"^a-zA-Z0-9._{0,31}$\". This attribute cannot be referenced in IAM bindings. You can also provide custom attributes by specifying `attribute.{custom_attribute}`, where {custom_attribute} is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workforce pool to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/locations/global/workforcePools/{pool}/subject/{value}` * `google.groups`: `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool}/group/{value}` * `attribute.{custom_attribute}`: `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool}/attribute.{custom_attribute}/{value}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 4KB. For OIDC providers, you must supply a custom mapping that includes the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {\"google.subject\": \"assertion.sub\"} ```", "type": "object" }, "description": { @@ -4633,6 +4664,10 @@ ], "readOnly": true, "type": "string" + }, + "x509": { + "$ref": "X509", + "description": "An X.509-type identity provider." } }, "type": "object" @@ -4685,6 +4720,12 @@ } }, "type": "object" + }, + "X509": { + "description": "An X.509-type identity provider represents a CA. It is trusted to assert a client identity if the client has a certificate that chains up to this CA.", + "id": "X509", + "properties": {}, + "type": "object" } }, "servicePath": "", diff --git a/iam/v1/iam-gen.go b/iam/v1/iam-gen.go index fe4953b994e..2968e9982a4 100644 --- a/iam/v1/iam-gen.go +++ b/iam/v1/iam-gen.go @@ -2646,6 +2646,49 @@ func (s *QueryTestablePermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ReconciliationOperationMetadata: Operation metadata returned by the +// CLH during resource state reconciliation. +type ReconciliationOperationMetadata struct { + // DeleteResource: DEPRECATED. Use exclusive_action instead. + DeleteResource bool `json:"deleteResource,omitempty"` + + // ExclusiveAction: Excluisive action returned by the CLH. + // + // Possible values: + // "UNKNOWN_REPAIR_ACTION" - Unknown repair action. + // "DELETE" - The resource has to be deleted. When using this bit, the + // CLH should fail the operation. DEPRECATED. Instead use + // DELETE_RESOURCE OperationSignal in SideChannel. + // "RETRY" - This resource could not be repaired but the repair should + // be tried again at a later time. This can happen if there is a + // dependency that needs to be resolved first- e.g. if a parent resource + // must be repaired before a child resource. + ExclusiveAction string `json:"exclusiveAction,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeleteResource") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeleteResource") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ReconciliationOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod ReconciliationOperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Role: A role in the Identity and Access Management API. type Role struct { // Deleted: The current deleted state of the role. This field is read @@ -2666,9 +2709,9 @@ type Role struct { // role name must not be set. When `Role` is used in output and other // input such as `UpdateRole`, the role name is the complete path. For // example, `roles/logging.viewer` for predefined roles, - // `organizations/{ORGANIZATION_ID}/roles/my-role` for - // organization-level custom roles, and - // `projects/{PROJECT_ID}/roles/my-role` for project-level custom roles. + // `organizations/{ORGANIZATION_ID}/roles/myRole` for organization-level + // custom roles, and `projects/{PROJECT_ID}/roles/myRole` for + // project-level custom roles. Name string `json:"name,omitempty"` // Stage: The current launch stage of the role. If the `ALPHA` launch @@ -2723,21 +2766,20 @@ func (s *Role) MarshalJSON() ([]byte, error) { // Saml: Represents an SAML 2.0 identity provider. type Saml struct { - // IdpMetadataXml: Required. SAML Identity provider configuration - // metadata xml doc. The xml document should comply with SAML 2.0 + // IdpMetadataXml: Required. SAML identity provider (IdP) configuration + // metadata XML doc. The XML document must comply with the SAML 2.0 // specification - // (https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). - // The max size of the acceptable xml document will be bounded to 128k - // characters. The metadata xml document should satisfy the following - // constraints: 1) Must contain an Identity Provider Entity ID. 2) Must - // contain at least one non-expired signing key certificate. 3) For each - // signing key: a) Valid from should be no more than 7 days from now. b) - // Valid to should be no more than 15 years in the future. 4) Upto 3 IdP - // signing keys are allowed in the metadata xml. When updating the - // provider's metadata xml, at lease one non-expired signing key must - // overlap with the existing metadata. This requirement is skipped if - // there are no non-expired signing keys present in the existing - // metadata + // (https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). + // The maximum size of an acceptable XML document is 128K characters. + // The SAML metadata XML document must satisfy the following + // constraints: * Must contain an IdP Entity ID. * Must contain at least + // one non-expired signing certificate. * For each signing certificate, + // the expiration must be: * From no more than 7 days in the future. * + // To no more than 15 years in the future. * Up to three IdP signing + // keys are allowed. When updating the provider's metadata XML, at least + // one non-expired signing key must overlap with the existing metadata. + // This requirement is skipped if there are no non-expired signing keys + // present in the existing metadata. IdpMetadataXml string `json:"idpMetadataXml,omitempty"` // ForceSendFields is a list of field names (e.g. "IdpMetadataXml") to @@ -3552,8 +3594,8 @@ type WorkforcePoolProvider struct { // optional field. When set, the image will be visible as the user's // profile picture. If not set, a generic user icon will be displayed // instead. This attribute cannot be referenced in IAM bindings. * - // `google.posix_username`: The linux username used by OS login. This is - // an optional field and the mapped posix username cannot exceed 32 + // `google.posix_username`: The Linux username used by OS Login. This is + // an optional field and the mapped POSIX username cannot exceed 32 // characters, The key must match the regex "^a-zA-Z0-9._{0,31}$". This // attribute cannot be referenced in IAM bindings. You can also provide // custom attributes by specifying `attribute.{custom_attribute}`, where @@ -3889,6 +3931,9 @@ type WorkloadIdentityPoolProvider struct { // permanently deleted. State string `json:"state,omitempty"` + // X509: An X.509-type identity provider. + X509 *X509 `json:"x509,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -3980,6 +4025,12 @@ func (s *WorkloadIdentityPoolProviderKey) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// X509: An X.509-type identity provider represents a CA. It is trusted +// to assert a client identity if the client has a certificate that +// chains up to this CA. +type X509 struct { +} + // method id "iam.iamPolicies.lintPolicy": type IamPoliciesLintPolicyCall struct { diff --git a/iam/v2beta/iam-api.json b/iam/v2beta/iam-api.json index a1ffd7c1bc7..9331edf89c3 100644 --- a/iam/v2beta/iam-api.json +++ b/iam/v2beta/iam-api.json @@ -12,7 +12,7 @@ "baseUrl": "https://iam.googleapis.com/", "batchPath": "batch", "canonicalName": "Iam", - "description": "Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls. ", + "description": "Manages identity and access control for Google Cloud resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls. Enabling this API also enables the IAM Service Account Credentials API (iamcredentials.googleapis.com). However, disabling this API doesn't disable the IAM Service Account Credentials API. ", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/iam/", "fullyEncodeReservedExpansion": true, @@ -293,9 +293,40 @@ } } }, - "revision": "20240108", + "revision": "20240314", "rootUrl": "https://iam.googleapis.com/", "schemas": { + "CloudControl2SharedOperationsReconciliationOperationMetadata": { + "description": "Operation metadata returned by the CLH during resource state reconciliation.", + "id": "CloudControl2SharedOperationsReconciliationOperationMetadata", + "properties": { + "deleteResource": { + "deprecated": true, + "description": "DEPRECATED. Use exclusive_action instead.", + "type": "boolean" + }, + "exclusiveAction": { + "description": "Excluisive action returned by the CLH.", + "enum": [ + "UNKNOWN_REPAIR_ACTION", + "DELETE", + "RETRY" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "Unknown repair action.", + "The resource has to be deleted. When using this bit, the CLH should fail the operation. DEPRECATED. Instead use DELETE_RESOURCE OperationSignal in SideChannel.", + "This resource could not be repaired but the repair should be tried again at a later time. This can happen if there is a dependency that needs to be resolved first- e.g. if a parent resource must be repaired before a child resource." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudCommonOperationMetadata": { "description": "Represents the metadata of the long-running operation.", "id": "GoogleCloudCommonOperationMetadata", diff --git a/iam/v2beta/iam-gen.go b/iam/v2beta/iam-gen.go index fb00f4ac986..c649fe096a2 100644 --- a/iam/v2beta/iam-gen.go +++ b/iam/v2beta/iam-gen.go @@ -176,6 +176,50 @@ type PoliciesOperationsService struct { s *Service } +// CloudControl2SharedOperationsReconciliationOperationMetadata: +// Operation metadata returned by the CLH during resource state +// reconciliation. +type CloudControl2SharedOperationsReconciliationOperationMetadata struct { + // DeleteResource: DEPRECATED. Use exclusive_action instead. + DeleteResource bool `json:"deleteResource,omitempty"` + + // ExclusiveAction: Excluisive action returned by the CLH. + // + // Possible values: + // "UNKNOWN_REPAIR_ACTION" - Unknown repair action. + // "DELETE" - The resource has to be deleted. When using this bit, the + // CLH should fail the operation. DEPRECATED. Instead use + // DELETE_RESOURCE OperationSignal in SideChannel. + // "RETRY" - This resource could not be repaired but the repair should + // be tried again at a later time. This can happen if there is a + // dependency that needs to be resolved first- e.g. if a parent resource + // must be repaired before a child resource. + ExclusiveAction string `json:"exclusiveAction,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeleteResource") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DeleteResource") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *CloudControl2SharedOperationsReconciliationOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod CloudControl2SharedOperationsReconciliationOperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudCommonOperationMetadata: Represents the metadata of the // long-running operation. type GoogleCloudCommonOperationMetadata struct { diff --git a/iap/v1/iap-api.json b/iap/v1/iap-api.json index 427979aedfe..28afce75f7b 100644 --- a/iap/v1/iap-api.json +++ b/iap/v1/iap-api.json @@ -650,7 +650,7 @@ ] }, "validateAttributeExpression": { - "description": "Validates a given CEL expression conforms to IAP restrictions.", + "description": "Validates that a given CEL expression conforms to IAP restrictions.", "flatPath": "v1/{v1Id}:validateAttributeExpression", "httpMethod": "POST", "id": "iap.validateAttributeExpression", @@ -659,7 +659,7 @@ ], "parameters": { "expression": { - "description": "Required. User input string expression. Should be of the form 'attributes.saml_attributes.filter(attribute, attribute.name in ['{attribute_name}', '{attribute_name}'])'", + "description": "Required. User input string expression. Should be of the form `attributes.saml_attributes.filter(attribute, attribute.name in ['{attribute_name}', '{attribute_name}'])`", "location": "query", "type": "string" }, @@ -682,7 +682,7 @@ } } }, - "revision": "20240119", + "revision": "20240315", "rootUrl": "https://iap.googleapis.com/", "schemas": { "AccessDeniedPageSettings": { diff --git a/iap/v1/iap-gen.go b/iap/v1/iap-gen.go index ac1d0e6927e..9999bc313a3 100644 --- a/iap/v1/iap-gen.go +++ b/iap/v1/iap-gen.go @@ -4371,7 +4371,7 @@ type V1ValidateAttributeExpressionCall struct { header_ http.Header } -// ValidateAttributeExpression: Validates a given CEL expression +// ValidateAttributeExpression: Validates that a given CEL expression // conforms to IAP restrictions. // // - name: The resource name of the IAP protected resource. @@ -4383,8 +4383,8 @@ func (r *V1Service) ValidateAttributeExpression(name string) *V1ValidateAttribut // Expression sets the optional parameter "expression": Required. User // input string expression. Should be of the form -// 'attributes.saml_attributes.filter(attribute, attribute.name in -// ['{attribute_name}', '{attribute_name}'])' +// `attributes.saml_attributes.filter(attribute, attribute.name in +// ['{attribute_name}', '{attribute_name}'])` func (c *V1ValidateAttributeExpressionCall) Expression(expression string) *V1ValidateAttributeExpressionCall { c.urlParams_.Set("expression", expression) return c @@ -4477,7 +4477,7 @@ func (c *V1ValidateAttributeExpressionCall) Do(opts ...googleapi.CallOption) (*V } return ret, nil // { - // "description": "Validates a given CEL expression conforms to IAP restrictions.", + // "description": "Validates that a given CEL expression conforms to IAP restrictions.", // "flatPath": "v1/{v1Id}:validateAttributeExpression", // "httpMethod": "POST", // "id": "iap.validateAttributeExpression", @@ -4486,7 +4486,7 @@ func (c *V1ValidateAttributeExpressionCall) Do(opts ...googleapi.CallOption) (*V // ], // "parameters": { // "expression": { - // "description": "Required. User input string expression. Should be of the form 'attributes.saml_attributes.filter(attribute, attribute.name in ['{attribute_name}', '{attribute_name}'])'", + // "description": "Required. User input string expression. Should be of the form `attributes.saml_attributes.filter(attribute, attribute.name in ['{attribute_name}', '{attribute_name}'])`", // "location": "query", // "type": "string" // }, diff --git a/testing/v1/testing-api.json b/testing/v1/testing-api.json index a40e4ce41c4..c3e20962f65 100644 --- a/testing/v1/testing-api.json +++ b/testing/v1/testing-api.json @@ -16,7 +16,8 @@ "batchPath": "batch", "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.", "discoveryVersion": "v1", - "documentationLink": "https://developers.google.com/cloud-test-lab/", + "documentationLink": "https://firebase.google.com/docs/test-lab/", + "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", "x32": "http://www.google.com/images/icons/product/search-32.gif" @@ -448,7 +449,7 @@ } } }, - "revision": "20240311", + "revision": "20240315", "rootUrl": "https://testing.googleapis.com/", "schemas": { "Account": { diff --git a/testing/v1/testing-gen.go b/testing/v1/testing-gen.go index 3659bea84bd..7b0d699cfb0 100644 --- a/testing/v1/testing-gen.go +++ b/testing/v1/testing-gen.go @@ -6,7 +6,7 @@ // Package testing provides access to the Cloud Testing API. // -// For product documentation, see: https://developers.google.com/cloud-test-lab/ +// For product documentation, see: https://firebase.google.com/docs/test-lab/ // // # Library status //