diff --git a/aiplatform/v1/aiplatform-api.json b/aiplatform/v1/aiplatform-api.json index 2e7fea56416..c3ac805d2cf 100644 --- a/aiplatform/v1/aiplatform-api.json +++ b/aiplatform/v1/aiplatform-api.json @@ -3242,7 +3242,7 @@ ], "parameters": { "filter": { - "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports = and !=. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports = and, != * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:* or labels:key - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports = Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", + "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports `=` and `!=`. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports `=` and `!=`. * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:*` or `labels:key` - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports `=`. Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", "location": "query", "type": "string" }, @@ -11797,6 +11797,187 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "reboot": { + "description": "Reboots a PersistentResource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.reboot", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:reboot", + "request": { + "$ref": "GoogleCloudAiplatformV1RebootPersistentResourceRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.persistentResources.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } }, @@ -15858,7 +16039,7 @@ } } }, - "revision": "20240313", + "revision": "20240320", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionEmbedVideoResponse": { @@ -19012,6 +19193,10 @@ "description": "Optional. The full name of the Compute Engine [network](/compute/docs/networks-and-firewalls#networks) to which the Job should be peered. For example, `projects/12345/global/networks/myVPC`. [Format](/compute/docs/reference/rest/v1/networks/insert) is of the form `projects/{project}/global/networks/{network}`. Where {project} is a project number, as in `12345`, and {network} is a network name. To specify this field, you must have already [configured VPC Network Peering for Vertex AI](https://cloud.google.com/vertex-ai/docs/general/vpc-peering). If this field is left unspecified, the job is not peered with any network.", "type": "string" }, + "persistentResourceId": { + "description": "Optional. The ID of the PersistentResource in the same Project and Location which to run If this is specified, the job will be run on existing machines held by the PersistentResource instead of on-demand short-live machines. The network and CMEK configs on the job should be consistent with those on the PersistentResource, otherwise, the job will be rejected.", + "type": "string" + }, "protectedArtifactLocationId": { "description": "The ID of the location to store protected artifacts. e.g. us-central1. Populate only when the location is different than CustomJob location. List of supported locations: https://cloud.google.com/vertex-ai/docs/general/locations", "type": "string" @@ -22038,6 +22223,10 @@ "description": "Response message for FeatureOnlineStoreService.FetchFeatureValues", "id": "GoogleCloudAiplatformV1FetchFeatureValuesResponse", "properties": { + "dataKey": { + "$ref": "GoogleCloudAiplatformV1FeatureViewDataKey", + "description": "The data key associated with this response. Will only be populated for FeatureOnlineStoreService.StreamingFetchFeatureValues RPCs." + }, "keyValues": { "$ref": "GoogleCloudAiplatformV1FetchFeatureValuesResponseFeatureNameValuePairList", "description": "Feature values in KeyValue format." @@ -22343,13 +22532,6 @@ }, "type": "array" }, - "systemInstructions": { - "description": "Optional. The user provided system instructions for the model.", - "items": { - "$ref": "GoogleCloudAiplatformV1Content" - }, - "type": "array" - }, "tools": { "description": "Optional. A list of `Tools` the model may use to generate the next response. A `Tool` is a piece of code that enables the system to interact with external systems to perform an action, or set of actions, outside of knowledge and scope of the model.", "items": { @@ -27789,6 +27971,10 @@ "$ref": "GoogleCloudAiplatformV1PublisherModelCallToActionDeployGke", "description": "Optional. Deploy PublisherModel to Google Kubernetes Engine." }, + "multiDeployVertex": { + "$ref": "GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex", + "description": "Optional. Multiple setups to deploy the PublisherModel to Vertex Endpoint." + }, "openEvaluationPipeline": { "$ref": "GoogleCloudAiplatformV1PublisherModelCallToActionRegionalResourceReferences", "description": "Optional. Open evaluation pipeline of the PublisherModel." @@ -27889,6 +28075,20 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex": { + "description": "Multiple setups to deploy the PublisherModel.", + "id": "GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex", + "properties": { + "multiDeployVertex": { + "description": "Optional. One click deployment configurations.", + "items": { + "$ref": "GoogleCloudAiplatformV1PublisherModelCallToActionDeploy" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1PublisherModelCallToActionOpenFineTuningPipelines": { "description": "Open fine tuning pipelines.", "id": "GoogleCloudAiplatformV1PublisherModelCallToActionOpenFineTuningPipelines", @@ -28480,6 +28680,12 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1RebootPersistentResourceRequest": { + "description": "Request message for PersistentResourceService.RebootPersistentResource.", + "id": "GoogleCloudAiplatformV1RebootPersistentResourceRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1RemoveContextChildrenRequest": { "description": "Request message for MetadataService.DeleteContextChildrenRequest.", "id": "GoogleCloudAiplatformV1RemoveContextChildrenRequest", @@ -29082,6 +29288,10 @@ "description": "Schema is used to define the format of input/output data. Represents a select subset of an [OpenAPI 3.0 schema object](https://spec.openapis.org/oas/v3.0.3#schema). More fields may be added in the future as needed.", "id": "GoogleCloudAiplatformV1Schema", "properties": { + "default": { + "description": "Optional. Default value of the data.", + "type": "any" + }, "description": { "description": "Optional. The description of the data.", "type": "string" @@ -29098,22 +29308,66 @@ "type": "any" }, "format": { - "description": "Optional. The format of the data. Supported formats: for NUMBER type: float, double for INTEGER type: int32, int64", + "description": "Optional. The format of the data. Supported formats: for NUMBER type: \"float\", \"double\" for INTEGER type: \"int32\", \"int64\" for STRING type: \"email\", \"byte\", etc", "type": "string" }, "items": { "$ref": "GoogleCloudAiplatformV1Schema", - "description": "Optional. Schema of the elements of Type.ARRAY." + "description": "Optional. SCHEMA FIELDS FOR TYPE ARRAY Schema of the elements of Type.ARRAY." + }, + "maxItems": { + "description": "Optional. Maximum number of the elements for Type.ARRAY.", + "format": "int64", + "type": "string" + }, + "maxLength": { + "description": "Optional. Maximum length of the Type.STRING", + "format": "int64", + "type": "string" + }, + "maxProperties": { + "description": "Optional. Maximum number of the properties for Type.OBJECT.", + "format": "int64", + "type": "string" + }, + "maximum": { + "description": "Optional. Maximum value of the Type.INTEGER and Type.NUMBER", + "format": "double", + "type": "number" + }, + "minItems": { + "description": "Optional. Minimum number of the elements for Type.ARRAY.", + "format": "int64", + "type": "string" + }, + "minLength": { + "description": "Optional. SCHEMA FIELDS FOR TYPE STRING Minimum length of the Type.STRING", + "format": "int64", + "type": "string" + }, + "minProperties": { + "description": "Optional. Minimum number of the properties for Type.OBJECT.", + "format": "int64", + "type": "string" + }, + "minimum": { + "description": "Optional. SCHEMA FIELDS FOR TYPE INTEGER and NUMBER Minimum value of the Type.INTEGER and Type.NUMBER", + "format": "double", + "type": "number" }, "nullable": { "description": "Optional. Indicates if the value may be null.", "type": "boolean" }, + "pattern": { + "description": "Optional. Pattern of the Type.STRING to restrict a string to a regular expression.", + "type": "string" + }, "properties": { "additionalProperties": { "$ref": "GoogleCloudAiplatformV1Schema" }, - "description": "Optional. Properties of Type.OBJECT.", + "description": "Optional. SCHEMA FIELDS FOR TYPE OBJECT Properties of Type.OBJECT.", "type": "object" }, "required": { @@ -29123,6 +29377,10 @@ }, "type": "array" }, + "title": { + "description": "Optional. The title of the Schema.", + "type": "string" + }, "type": { "description": "Optional. The type of the data.", "enum": [ @@ -35078,7 +35336,7 @@ "id": "GoogleCloudAiplatformV1VertexAISearch", "properties": { "datastore": { - "description": "Required. Fully-qualified Vertex AI Search's datastore resource ID. projects/\u003c\u003e/locations/\u003c\u003e/collections/\u003c\u003e/dataStores/\u003c\u003e", + "description": "Required. Fully-qualified Vertex AI Search's datastore resource ID. Format: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}", "type": "string" } }, @@ -35830,6 +36088,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -36155,6 +36415,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset.", "Mobile assistant finetune datasets.", "", @@ -36594,6 +36856,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -36919,6 +37183,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset.", "Mobile assistant finetune datasets.", "", @@ -37369,6 +37635,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -37694,6 +37962,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset", "Mobile assistant finetune datasets.", "", @@ -38133,6 +38403,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -38458,6 +38730,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset", "Mobile assistant finetune datasets.", "", @@ -39150,7 +39424,7 @@ "id": "LearningGenaiRootGroundingMetadataCitation", "properties": { "endIndex": { - "description": "Index in the prediction output where the citation ends (exclusive). Must be \u003e start_index and \u003c len(output).", + "description": "Index in the prediction output where the citation ends (exclusive). Must be \u003e start_index and \u003c= len(output).", "format": "int32", "type": "integer" }, @@ -39940,14 +40214,16 @@ "RETURN", "STOP", "MAX_TOKENS", - "FILTER" + "FILTER", + "TOP_N_FILTERED" ], "enumDescriptions": [ "", "Return all the tokens back. This typically implies no filtering or stop sequence was triggered.", "Finished due to provided stop sequence.", "Model has emitted the maximum number of tokens as specified by max_decoding_steps.", - "Finished due to triggering some post-processing filter." + "Finished due to triggering some post-processing filter.", + "Filtered out due to Top_N \u003c Response_Candidates.Size()" ], "type": "string" }, diff --git a/aiplatform/v1/aiplatform-gen.go b/aiplatform/v1/aiplatform-gen.go index 1efa3c235ae..2f2bb95a1cc 100644 --- a/aiplatform/v1/aiplatform-gen.go +++ b/aiplatform/v1/aiplatform-gen.go @@ -986,11 +986,23 @@ type ProjectsLocationsOperationsService struct { func NewProjectsLocationsPersistentResourcesService(s *Service) *ProjectsLocationsPersistentResourcesService { rs := &ProjectsLocationsPersistentResourcesService{s: s} + rs.Operations = NewProjectsLocationsPersistentResourcesOperationsService(s) return rs } type ProjectsLocationsPersistentResourcesService struct { s *Service + + Operations *ProjectsLocationsPersistentResourcesOperationsService +} + +func NewProjectsLocationsPersistentResourcesOperationsService(s *Service) *ProjectsLocationsPersistentResourcesOperationsService { + rs := &ProjectsLocationsPersistentResourcesOperationsService{s: s} + return rs +} + +type ProjectsLocationsPersistentResourcesOperationsService struct { + s *Service } func NewProjectsLocationsPipelineJobsService(s *Service) *ProjectsLocationsPipelineJobsService { @@ -6866,6 +6878,14 @@ type GoogleCloudAiplatformV1CustomJobSpec struct { // network. Network string `json:"network,omitempty"` + // PersistentResourceId: Optional. The ID of the PersistentResource in + // the same Project and Location which to run If this is specified, the + // job will be run on existing machines held by the PersistentResource + // instead of on-demand short-live machines. The network and CMEK + // configs on the job should be consistent with those on the + // PersistentResource, otherwise, the job will be rejected. + PersistentResourceId string `json:"persistentResourceId,omitempty"` + // ProtectedArtifactLocationId: The ID of the location to store // protected artifacts. e.g. us-central1. Populate only when the // location is different than CustomJob location. List of supported @@ -12502,6 +12522,11 @@ func (s *GoogleCloudAiplatformV1FetchFeatureValuesRequest) MarshalJSON() ([]byte // GoogleCloudAiplatformV1FetchFeatureValuesResponse: Response message // for FeatureOnlineStoreService.FetchFeatureValues type GoogleCloudAiplatformV1FetchFeatureValuesResponse struct { + // DataKey: The data key associated with this response. Will only be + // populated for FeatureOnlineStoreService.StreamingFetchFeatureValues + // RPCs. + DataKey *GoogleCloudAiplatformV1FeatureViewDataKey `json:"dataKey,omitempty"` + // KeyValues: Feature values in KeyValue format. KeyValues *GoogleCloudAiplatformV1FetchFeatureValuesResponseFeatureNameValuePairList `json:"keyValues,omitempty"` @@ -12512,7 +12537,7 @@ type GoogleCloudAiplatformV1FetchFeatureValuesResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "KeyValues") to + // ForceSendFields is a list of field names (e.g. "DataKey") 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 @@ -12520,7 +12545,7 @@ type GoogleCloudAiplatformV1FetchFeatureValuesResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "KeyValues") to include in + // NullFields is a list of field names (e.g. "DataKey") 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 @@ -13185,10 +13210,6 @@ type GoogleCloudAiplatformV1GenerateContentRequest struct { // content. Enforced on GenerateContentResponse.candidates. SafetySettings []*GoogleCloudAiplatformV1SafetySetting `json:"safetySettings,omitempty"` - // SystemInstructions: Optional. The user provided system instructions - // for the model. - SystemInstructions []*GoogleCloudAiplatformV1Content `json:"systemInstructions,omitempty"` - // Tools: Optional. A list of `Tools` the model may use to generate the // next response. A `Tool` is a piece of code that enables the system to // interact with external systems to perform an action, or set of @@ -22579,6 +22600,10 @@ type GoogleCloudAiplatformV1PublisherModelCallToAction struct { // Engine. DeployGke *GoogleCloudAiplatformV1PublisherModelCallToActionDeployGke `json:"deployGke,omitempty"` + // MultiDeployVertex: Optional. Multiple setups to deploy the + // PublisherModel to Vertex Endpoint. + MultiDeployVertex *GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex `json:"multiDeployVertex,omitempty"` + // OpenEvaluationPipeline: Optional. Open evaluation pipeline of the // PublisherModel. OpenEvaluationPipeline *GoogleCloudAiplatformV1PublisherModelCallToActionRegionalResourceReferences `json:"openEvaluationPipeline,omitempty"` @@ -22734,6 +22759,36 @@ func (s *GoogleCloudAiplatformV1PublisherModelCallToActionDeployGke) MarshalJSON return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex: +// Multiple setups to deploy the PublisherModel. +type GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex struct { + // MultiDeployVertex: Optional. One click deployment configurations. + MultiDeployVertex []*GoogleCloudAiplatformV1PublisherModelCallToActionDeploy `json:"multiDeployVertex,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MultiDeployVertex") + // 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. "MultiDeployVertex") 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 *GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1PublisherModelCallToActionDeployVertex + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAiplatformV1PublisherModelCallToActionOpenFineTuningPipelin // es: Open fine tuning pipelines. type GoogleCloudAiplatformV1PublisherModelCallToActionOpenFineTuningPipelines struct { @@ -23979,6 +24034,11 @@ func (s *GoogleCloudAiplatformV1RebootPersistentResourceOperationMetadata) Marsh return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1RebootPersistentResourceRequest: Request +// message for PersistentResourceService.RebootPersistentResource. +type GoogleCloudAiplatformV1RebootPersistentResourceRequest struct { +} + // GoogleCloudAiplatformV1RemoveContextChildrenRequest: Request message // for MetadataService.DeleteContextChildrenRequest. type GoogleCloudAiplatformV1RemoveContextChildrenRequest struct { @@ -24986,6 +25046,9 @@ func (s *GoogleCloudAiplatformV1Scheduling) MarshalJSON() ([]byte, error) { // schema object (https://spec.openapis.org/oas/v3.0.3#schema). More // fields may be added in the future as needed. type GoogleCloudAiplatformV1Schema struct { + // Default: Optional. Default value of the data. + Default interface{} `json:"default,omitempty"` + // Description: Optional. The description of the data. Description string `json:"description,omitempty"` @@ -24999,21 +25062,59 @@ type GoogleCloudAiplatformV1Schema struct { Example interface{} `json:"example,omitempty"` // Format: Optional. The format of the data. Supported formats: for - // NUMBER type: float, double for INTEGER type: int32, int64 + // NUMBER type: "float", "double" for INTEGER type: "int32", "int64" for + // STRING type: "email", "byte", etc Format string `json:"format,omitempty"` - // Items: Optional. Schema of the elements of Type.ARRAY. + // Items: Optional. SCHEMA FIELDS FOR TYPE ARRAY Schema of the elements + // of Type.ARRAY. Items *GoogleCloudAiplatformV1Schema `json:"items,omitempty"` + // MaxItems: Optional. Maximum number of the elements for Type.ARRAY. + MaxItems int64 `json:"maxItems,omitempty,string"` + + // MaxLength: Optional. Maximum length of the Type.STRING + MaxLength int64 `json:"maxLength,omitempty,string"` + + // MaxProperties: Optional. Maximum number of the properties for + // Type.OBJECT. + MaxProperties int64 `json:"maxProperties,omitempty,string"` + + // Maximum: Optional. Maximum value of the Type.INTEGER and Type.NUMBER + Maximum float64 `json:"maximum,omitempty"` + + // MinItems: Optional. Minimum number of the elements for Type.ARRAY. + MinItems int64 `json:"minItems,omitempty,string"` + + // MinLength: Optional. SCHEMA FIELDS FOR TYPE STRING Minimum length of + // the Type.STRING + MinLength int64 `json:"minLength,omitempty,string"` + + // MinProperties: Optional. Minimum number of the properties for + // Type.OBJECT. + MinProperties int64 `json:"minProperties,omitempty,string"` + + // Minimum: Optional. SCHEMA FIELDS FOR TYPE INTEGER and NUMBER Minimum + // value of the Type.INTEGER and Type.NUMBER + Minimum float64 `json:"minimum,omitempty"` + // Nullable: Optional. Indicates if the value may be null. Nullable bool `json:"nullable,omitempty"` - // Properties: Optional. Properties of Type.OBJECT. + // Pattern: Optional. Pattern of the Type.STRING to restrict a string to + // a regular expression. + Pattern string `json:"pattern,omitempty"` + + // Properties: Optional. SCHEMA FIELDS FOR TYPE OBJECT Properties of + // Type.OBJECT. Properties map[string]GoogleCloudAiplatformV1Schema `json:"properties,omitempty"` // Required: Optional. Required properties of Type.OBJECT. Required []string `json:"required,omitempty"` + // Title: Optional. The title of the Schema. + Title string `json:"title,omitempty"` + // Type: Optional. The type of the data. // // Possible values: @@ -25026,7 +25127,7 @@ type GoogleCloudAiplatformV1Schema struct { // "OBJECT" - OpenAPI object type Type string `json:"type,omitempty"` - // ForceSendFields is a list of field names (e.g. "Description") to + // ForceSendFields is a list of field names (e.g. "Default") 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 @@ -25034,10 +25135,10 @@ type GoogleCloudAiplatformV1Schema struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Description") 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 + // NullFields is a list of field names (e.g. "Default") 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:"-"` @@ -25049,6 +25150,22 @@ func (s *GoogleCloudAiplatformV1Schema) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *GoogleCloudAiplatformV1Schema) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudAiplatformV1Schema + var s1 struct { + Maximum gensupport.JSONFloat64 `json:"maximum"` + Minimum gensupport.JSONFloat64 `json:"minimum"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Maximum = float64(s1.Maximum) + s.Minimum = float64(s1.Minimum) + return nil +} + // GoogleCloudAiplatformV1SchemaAnnotationSpecColor: An entry of mapping // between color and AnnotationSpec. The mapping is used in segmentation // mask. @@ -36904,7 +37021,9 @@ func (s *GoogleCloudAiplatformV1Value) UnmarshalJSON(data []byte) error { // https://cloud.google.com/vertex-ai-search-and-conversation type GoogleCloudAiplatformV1VertexAISearch struct { // Datastore: Required. Fully-qualified Vertex AI Search's datastore - // resource ID. projects/<>/locations/<>/collections/<>/dataStores/<> + // resource ID. Format: + // projects/{project}/locations/{location}/collections/{collection}/dataS + // tores/{dataStore} Datastore string `json:"datastore,omitempty"` // ForceSendFields is a list of field names (e.g. "Datastore") to @@ -38403,6 +38522,8 @@ type LanguageLabsAidaTrustRecitationProtoDocAttribution struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset. // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -38990,6 +39111,8 @@ type LanguageLabsAidaTrustRecitationProtoSegmentResult struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset. // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -39572,6 +39695,8 @@ type LearningGenaiRecitationDocAttribution struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -40159,6 +40284,8 @@ type LearningGenaiRecitationSegmentResult struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -41038,7 +41165,7 @@ func (s *LearningGenaiRootGroundingMetadata) MarshalJSON() ([]byte, error) { type LearningGenaiRootGroundingMetadataCitation struct { // EndIndex: Index in the prediction output where the citation ends - // (exclusive). Must be > start_index and < len(output). + // (exclusive). Must be > start_index and <= len(output). EndIndex int64 `json:"endIndex,omitempty"` // FactIndex: Index of the fact supporting this claim. Should be within @@ -42379,6 +42506,8 @@ type LearningServingLlmMessageMetadata struct { // "MAX_TOKENS" - Model has emitted the maximum number of tokens as // specified by max_decoding_steps. // "FILTER" - Finished due to triggering some post-processing filter. + // "TOP_N_FILTERED" - Filtered out due to Top_N < + // Response_Candidates.Size() FinishReason string `json:"finishReason,omitempty"` GroundingMetadata *LearningGenaiRootGroundingMetadata `json:"groundingMetadata,omitempty"` @@ -57455,13 +57584,13 @@ func (r *ProjectsLocationsEndpointsService) List(parent string) *ProjectsLocatio // Filter sets the optional parameter "filter": An expression for // filtering the results of the request. For field names both snake_case -// and camelCase are supported. * `endpoint` supports = and !=. +// and camelCase are supported. * `endpoint` supports `=` and `!=`. // `endpoint` represents the Endpoint ID, i.e. the last segment of the -// Endpoint's resource name. * `display_name` supports = and, != * +// Endpoint's resource name. * `display_name` supports `=` and `!=`. * // `labels` supports general map functions that is: * `labels.key=value` -// - key:value equality * `labels.key:* or labels:key - key existence * -// A key including a space must be quoted. `labels."a key". * -// `base_model_name` only supports = Some examples: * `endpoint=1` * +// - key:value equality * `labels.key:*` or `labels:key` - key existence +// * A key including a space must be quoted. `labels."a key". * +// `base_model_name` only supports `=`. Some examples: * `endpoint=1` * // `displayName="myDisplayName" * `labels.myKey="myValue" * // `baseModelName="text-bison" func (c *ProjectsLocationsEndpointsListCall) Filter(filter string) *ProjectsLocationsEndpointsListCall { @@ -57612,7 +57741,7 @@ func (c *ProjectsLocationsEndpointsListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports = and !=. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports = and, != * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:* or labels:key - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports = Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", + // "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports `=` and `!=`. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports `=` and `!=`. * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:*` or `labels:key` - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports `=`. Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", // "location": "query", // "type": "string" // }, @@ -100363,29 +100492,972 @@ func (c *ProjectsLocationsOperationsWaitCall) Do(opts ...googleapi.CallOption) ( } return ret, nil // { - // "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait", + // "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.operations.wait", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to wait on.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "timeout": { + // "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + // "format": "google-duration", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}:wait", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "aiplatform.projects.locations.persistentResources.create": + +type ProjectsLocationsPersistentResourcesCreateCall struct { + s *Service + parent string + googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a PersistentResource. +// +// - parent: The resource name of the Location to create the +// PersistentResource in. Format: +// `projects/{project}/locations/{location}`. +func (r *ProjectsLocationsPersistentResourcesService) Create(parent string, googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource) *ProjectsLocationsPersistentResourcesCreateCall { + c := &ProjectsLocationsPersistentResourcesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudaiplatformv1persistentresource = googlecloudaiplatformv1persistentresource + return c +} + +// PersistentResourceId sets the optional parameter +// "persistentResourceId": Required. The ID to use for the +// PersistentResource, which become the final component of the +// PersistentResource's resource name. The maximum length is 63 +// characters, and valid characters are `/^a-z +// ([a-z0-9-]{0,61}[a-z0-9])?$/`. +func (c *ProjectsLocationsPersistentResourcesCreateCall) PersistentResourceId(persistentResourceId string) *ProjectsLocationsPersistentResourcesCreateCall { + c.urlParams_.Set("persistentResourceId", persistentResourceId) + 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 *ProjectsLocationsPersistentResourcesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsPersistentResourcesCreateCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesCreateCall { + 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 *ProjectsLocationsPersistentResourcesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesCreateCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1persistentresource) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/persistentResources") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "aiplatform.projects.locations.persistentResources.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Creates a PersistentResource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.persistentResources.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The resource name of the Location to create the PersistentResource in. Format: `projects/{project}/locations/{location}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "persistentResourceId": { + // "description": "Required. The ID to use for the PersistentResource, which become the final component of the PersistentResource's resource name. The maximum length is 63 characters, and valid characters are `/^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$/`.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/persistentResources", + // "request": { + // "$ref": "GoogleCloudAiplatformV1PersistentResource" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "aiplatform.projects.locations.persistentResources.delete": + +type ProjectsLocationsPersistentResourcesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a PersistentResource. +// +// - name: The name of the PersistentResource to be deleted. Format: +// `projects/{project}/locations/{location}/persistentResources/{persis +// tent_resource}`. +func (r *ProjectsLocationsPersistentResourcesService) Delete(name string) *ProjectsLocationsPersistentResourcesDeleteCall { + c := &ProjectsLocationsPersistentResourcesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + 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 *ProjectsLocationsPersistentResourcesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsPersistentResourcesDeleteCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesDeleteCall { + 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 *ProjectsLocationsPersistentResourcesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesDeleteCall) 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()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", 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 "aiplatform.projects.locations.persistentResources.delete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Deletes a PersistentResource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + // "httpMethod": "DELETE", + // "id": "aiplatform.projects.locations.persistentResources.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the PersistentResource to be deleted. Format: `projects/{project}/locations/{location}/persistentResources/{persistent_resource}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "aiplatform.projects.locations.persistentResources.get": + +type ProjectsLocationsPersistentResourcesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a PersistentResource. +// +// - name: The name of the PersistentResource resource. Format: +// `projects/{project_id_or_number}/locations/{location_id}/persistentR +// esources/{persistent_resource_id}`. +func (r *ProjectsLocationsPersistentResourcesService) Get(name string) *ProjectsLocationsPersistentResourcesGetCall { + c := &ProjectsLocationsPersistentResourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + 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 *ProjectsLocationsPersistentResourcesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesGetCall { + 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 *ProjectsLocationsPersistentResourcesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesGetCall { + 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 *ProjectsLocationsPersistentResourcesGetCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesGetCall { + 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 *ProjectsLocationsPersistentResourcesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesGetCall) 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, "v1/{+name}") + 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 "aiplatform.projects.locations.persistentResources.get" call. +// Exactly one of *GoogleCloudAiplatformV1PersistentResource or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudAiplatformV1PersistentResource.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1PersistentResource, 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 := &GoogleCloudAiplatformV1PersistentResource{ + 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 a PersistentResource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + // "httpMethod": "GET", + // "id": "aiplatform.projects.locations.persistentResources.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudAiplatformV1PersistentResource" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "aiplatform.projects.locations.persistentResources.list": + +type ProjectsLocationsPersistentResourcesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists PersistentResources in a Location. +// +// - parent: The resource name of the Location to list the +// PersistentResources from. Format: +// `projects/{project}/locations/{location}`. +func (r *ProjectsLocationsPersistentResourcesService) List(parent string) *ProjectsLocationsPersistentResourcesListCall { + c := &ProjectsLocationsPersistentResourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *ProjectsLocationsPersistentResourcesListCall) PageSize(pageSize int64) *ProjectsLocationsPersistentResourcesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. Typically obtained via +// ListPersistentResourceResponse.next_page_token of the previous +// PersistentResourceService.ListPersistentResource call. +func (c *ProjectsLocationsPersistentResourcesListCall) PageToken(pageToken string) *ProjectsLocationsPersistentResourcesListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *ProjectsLocationsPersistentResourcesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesListCall { + 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 *ProjectsLocationsPersistentResourcesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesListCall { + 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 *ProjectsLocationsPersistentResourcesListCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesListCall { + 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 *ProjectsLocationsPersistentResourcesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesListCall) 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, "v1/{+parent}/persistentResources") + 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{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "aiplatform.projects.locations.persistentResources.list" call. +// Exactly one of +// *GoogleCloudAiplatformV1ListPersistentResourcesResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudAiplatformV1ListPersistentResourcesResponse.ServerResponse +// .Header 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 *ProjectsLocationsPersistentResourcesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1ListPersistentResourcesResponse, 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 := &GoogleCloudAiplatformV1ListPersistentResourcesResponse{ + 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": "Lists PersistentResources in a Location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources", + // "httpMethod": "GET", + // "id": "aiplatform.projects.locations.persistentResources.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The standard list page token. Typically obtained via ListPersistentResourceResponse.next_page_token of the previous PersistentResourceService.ListPersistentResource call.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the Location to list the PersistentResources from. Format: `projects/{project}/locations/{location}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/persistentResources", + // "response": { + // "$ref": "GoogleCloudAiplatformV1ListPersistentResourcesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsPersistentResourcesListCall) Pages(ctx context.Context, f func(*GoogleCloudAiplatformV1ListPersistentResourcesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "aiplatform.projects.locations.persistentResources.patch": + +type ProjectsLocationsPersistentResourcesPatchCall struct { + s *Service + name string + googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a PersistentResource. +// +// - name: Immutable. Resource name of a PersistentResource. +func (r *ProjectsLocationsPersistentResourcesService) Patch(name string, googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource) *ProjectsLocationsPersistentResourcesPatchCall { + c := &ProjectsLocationsPersistentResourcesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudaiplatformv1persistentresource = googlecloudaiplatformv1persistentresource + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. +// Specify the fields to be overwritten in the PersistentResource by the +// update method. +func (c *ProjectsLocationsPersistentResourcesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPersistentResourcesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + 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 *ProjectsLocationsPersistentResourcesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsPersistentResourcesPatchCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesPatchCall { + 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 *ProjectsLocationsPersistentResourcesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesPatchCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1persistentresource) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", 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 "aiplatform.projects.locations.persistentResources.patch" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Updates a PersistentResource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + // "httpMethod": "PATCH", + // "id": "aiplatform.projects.locations.persistentResources.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Immutable. Resource name of a PersistentResource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Specify the fields to be overwritten in the PersistentResource by the update method.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudAiplatformV1PersistentResource" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "aiplatform.projects.locations.persistentResources.reboot": + +type ProjectsLocationsPersistentResourcesRebootCall struct { + s *Service + name string + googlecloudaiplatformv1rebootpersistentresourcerequest *GoogleCloudAiplatformV1RebootPersistentResourceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Reboot: Reboots a PersistentResource. +// +// - name: The name of the PersistentResource resource. Format: +// `projects/{project_id_or_number}/locations/{location_id}/persistentR +// esources/{persistent_resource_id}`. +func (r *ProjectsLocationsPersistentResourcesService) Reboot(name string, googlecloudaiplatformv1rebootpersistentresourcerequest *GoogleCloudAiplatformV1RebootPersistentResourceRequest) *ProjectsLocationsPersistentResourcesRebootCall { + c := &ProjectsLocationsPersistentResourcesRebootCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudaiplatformv1rebootpersistentresourcerequest = googlecloudaiplatformv1rebootpersistentresourcerequest + 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 *ProjectsLocationsPersistentResourcesRebootCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesRebootCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsPersistentResourcesRebootCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesRebootCall { + 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 *ProjectsLocationsPersistentResourcesRebootCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesRebootCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1rebootpersistentresourcerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:reboot") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", 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 "aiplatform.projects.locations.persistentResources.reboot" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesRebootCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Reboots a PersistentResource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", // "httpMethod": "POST", - // "id": "aiplatform.projects.locations.operations.wait", + // "id": "aiplatform.projects.locations.persistentResources.reboot", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "The name of the operation resource to wait on.", + // "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", // "required": true, // "type": "string" - // }, - // "timeout": { - // "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - // "format": "google-duration", - // "location": "query", - // "type": "string" // } // }, - // "path": "v1/{+name}:wait", + // "path": "v1/{+name}:reboot", + // "request": { + // "$ref": "GoogleCloudAiplatformV1RebootPersistentResourceRequest" + // }, // "response": { // "$ref": "GoogleLongrunningOperation" // }, @@ -100396,44 +101468,38 @@ func (c *ProjectsLocationsOperationsWaitCall) Do(opts ...googleapi.CallOption) ( } -// method id "aiplatform.projects.locations.persistentResources.create": +// method id "aiplatform.projects.locations.persistentResources.operations.cancel": -type ProjectsLocationsPersistentResourcesCreateCall struct { - s *Service - parent string - googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsPersistentResourcesOperationsCancelCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Create: Creates a PersistentResource. +// Cancel: Starts asynchronous cancellation on a long-running operation. +// The server makes a best effort to cancel the operation, but success +// is not guaranteed. If the server doesn't support this method, it +// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use +// Operations.GetOperation or other methods to check whether the +// cancellation succeeded or whether the operation completed despite +// cancellation. On successful cancellation, the operation is not +// deleted; instead, it becomes an operation with an Operation.error +// value with a google.rpc.Status.code of 1, corresponding to +// `Code.CANCELLED`. // -// - parent: The resource name of the Location to create the -// PersistentResource in. Format: -// `projects/{project}/locations/{location}`. -func (r *ProjectsLocationsPersistentResourcesService) Create(parent string, googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource) *ProjectsLocationsPersistentResourcesCreateCall { - c := &ProjectsLocationsPersistentResourcesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - c.googlecloudaiplatformv1persistentresource = googlecloudaiplatformv1persistentresource - return c -} - -// PersistentResourceId sets the optional parameter -// "persistentResourceId": Required. The ID to use for the -// PersistentResource, which become the final component of the -// PersistentResource's resource name. The maximum length is 63 -// characters, and valid characters are `/^a-z -// ([a-z0-9-]{0,61}[a-z0-9])?$/`. -func (c *ProjectsLocationsPersistentResourcesCreateCall) PersistentResourceId(persistentResourceId string) *ProjectsLocationsPersistentResourcesCreateCall { - c.urlParams_.Set("persistentResourceId", persistentResourceId) +// - name: The name of the operation resource to be cancelled. +func (r *ProjectsLocationsPersistentResourcesOperationsService) Cancel(name string) *ProjectsLocationsPersistentResourcesOperationsCancelCall { + c := &ProjectsLocationsPersistentResourcesOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name 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 *ProjectsLocationsPersistentResourcesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesCreateCall { +func (c *ProjectsLocationsPersistentResourcesOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesOperationsCancelCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -100441,21 +101507,21 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) Fields(s ...googleapi.F // 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 *ProjectsLocationsPersistentResourcesCreateCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesCreateCall { +func (c *ProjectsLocationsPersistentResourcesOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesOperationsCancelCall { 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 *ProjectsLocationsPersistentResourcesCreateCall) Header() http.Header { +func (c *ProjectsLocationsPersistentResourcesOperationsCancelCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsPersistentResourcesCreateCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsCancelCall) 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_ { @@ -100463,14 +101529,9 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) doRequest(alt string) ( } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1persistentresource) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/persistentResources") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { @@ -100478,19 +101539,19 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) doRequest(alt string) ( } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "parent": c.parent, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "aiplatform.projects.locations.persistentResources.create" call. -// Exactly one of *GoogleLongrunningOperation or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *GoogleLongrunningOperation.ServerResponse.Header or (if a response -// was returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "aiplatform.projects.locations.persistentResources.operations.cancel" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -100509,7 +101570,7 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) Do(opts ...googleapi.Ca if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleLongrunningOperation{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -100521,33 +101582,25 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Creates a PersistentResource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources", + // "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:cancel", // "httpMethod": "POST", - // "id": "aiplatform.projects.locations.persistentResources.create", + // "id": "aiplatform.projects.locations.persistentResources.operations.cancel", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { - // "parent": { - // "description": "Required. The resource name of the Location to create the PersistentResource in. Format: `projects/{project}/locations/{location}`", + // "name": { + // "description": "The name of the operation resource to be cancelled.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", // "required": true, // "type": "string" - // }, - // "persistentResourceId": { - // "description": "Required. The ID to use for the PersistentResource, which become the final component of the PersistentResource's resource name. The maximum length is 63 characters, and valid characters are `/^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$/`.", - // "location": "query", - // "type": "string" // } // }, - // "path": "v1/{+parent}/persistentResources", - // "request": { - // "$ref": "GoogleCloudAiplatformV1PersistentResource" - // }, + // "path": "v1/{+name}:cancel", // "response": { - // "$ref": "GoogleLongrunningOperation" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -100556,9 +101609,9 @@ func (c *ProjectsLocationsPersistentResourcesCreateCall) Do(opts ...googleapi.Ca } -// method id "aiplatform.projects.locations.persistentResources.delete": +// method id "aiplatform.projects.locations.persistentResources.operations.delete": -type ProjectsLocationsPersistentResourcesDeleteCall struct { +type ProjectsLocationsPersistentResourcesOperationsDeleteCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -100566,13 +101619,14 @@ type ProjectsLocationsPersistentResourcesDeleteCall struct { header_ http.Header } -// Delete: Deletes a PersistentResource. +// Delete: Deletes a long-running operation. This method indicates that +// the client is no longer interested in the operation result. It does +// not cancel the operation. If the server doesn't support this method, +// it returns `google.rpc.Code.UNIMPLEMENTED`. // -// - name: The name of the PersistentResource to be deleted. Format: -// `projects/{project}/locations/{location}/persistentResources/{persis -// tent_resource}`. -func (r *ProjectsLocationsPersistentResourcesService) Delete(name string) *ProjectsLocationsPersistentResourcesDeleteCall { - c := &ProjectsLocationsPersistentResourcesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource to be deleted. +func (r *ProjectsLocationsPersistentResourcesOperationsService) Delete(name string) *ProjectsLocationsPersistentResourcesOperationsDeleteCall { + c := &ProjectsLocationsPersistentResourcesOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } @@ -100580,7 +101634,7 @@ func (r *ProjectsLocationsPersistentResourcesService) Delete(name string) *Proje // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsPersistentResourcesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesDeleteCall { +func (c *ProjectsLocationsPersistentResourcesOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesOperationsDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -100588,21 +101642,21 @@ func (c *ProjectsLocationsPersistentResourcesDeleteCall) Fields(s ...googleapi.F // 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 *ProjectsLocationsPersistentResourcesDeleteCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesDeleteCall { +func (c *ProjectsLocationsPersistentResourcesOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesOperationsDeleteCall { 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 *ProjectsLocationsPersistentResourcesDeleteCall) Header() http.Header { +func (c *ProjectsLocationsPersistentResourcesOperationsDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsPersistentResourcesDeleteCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsDeleteCall) 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_ { @@ -100625,14 +101679,14 @@ func (c *ProjectsLocationsPersistentResourcesDeleteCall) doRequest(alt string) ( return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "aiplatform.projects.locations.persistentResources.delete" call. -// Exactly one of *GoogleLongrunningOperation or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *GoogleLongrunningOperation.ServerResponse.Header or (if a response -// was returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "aiplatform.projects.locations.persistentResources.operations.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -100651,7 +101705,7 @@ func (c *ProjectsLocationsPersistentResourcesDeleteCall) Do(opts ...googleapi.Ca if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleLongrunningOperation{ + ret := &GoogleProtobufEmpty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -100663,25 +101717,25 @@ func (c *ProjectsLocationsPersistentResourcesDeleteCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Deletes a PersistentResource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + // "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", // "httpMethod": "DELETE", - // "id": "aiplatform.projects.locations.persistentResources.delete", + // "id": "aiplatform.projects.locations.persistentResources.operations.delete", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The name of the PersistentResource to be deleted. Format: `projects/{project}/locations/{location}/persistentResources/{persistent_resource}`", + // "description": "The name of the operation resource to be deleted.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", // "required": true, // "type": "string" // } // }, // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleLongrunningOperation" + // "$ref": "GoogleProtobufEmpty" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -100690,9 +101744,9 @@ func (c *ProjectsLocationsPersistentResourcesDeleteCall) Do(opts ...googleapi.Ca } -// method id "aiplatform.projects.locations.persistentResources.get": +// method id "aiplatform.projects.locations.persistentResources.operations.get": -type ProjectsLocationsPersistentResourcesGetCall struct { +type ProjectsLocationsPersistentResourcesOperationsGetCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -100701,13 +101755,13 @@ type ProjectsLocationsPersistentResourcesGetCall struct { header_ http.Header } -// Get: Gets a PersistentResource. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - name: The name of the PersistentResource resource. Format: -// `projects/{project_id_or_number}/locations/{location_id}/persistentR -// esources/{persistent_resource_id}`. -func (r *ProjectsLocationsPersistentResourcesService) Get(name string) *ProjectsLocationsPersistentResourcesGetCall { - c := &ProjectsLocationsPersistentResourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource. +func (r *ProjectsLocationsPersistentResourcesOperationsService) Get(name string) *ProjectsLocationsPersistentResourcesOperationsGetCall { + c := &ProjectsLocationsPersistentResourcesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } @@ -100715,7 +101769,7 @@ func (r *ProjectsLocationsPersistentResourcesService) Get(name string) *Projects // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsPersistentResourcesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesGetCall { +func (c *ProjectsLocationsPersistentResourcesOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -100725,7 +101779,7 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) Fields(s ...googleapi.Fiel // 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 *ProjectsLocationsPersistentResourcesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesGetCall { +func (c *ProjectsLocationsPersistentResourcesOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesOperationsGetCall { c.ifNoneMatch_ = entityTag return c } @@ -100733,21 +101787,21 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) IfNoneMatch(entityTag stri // 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 *ProjectsLocationsPersistentResourcesGetCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesGetCall { +func (c *ProjectsLocationsPersistentResourcesOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesOperationsGetCall { 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 *ProjectsLocationsPersistentResourcesGetCall) Header() http.Header { +func (c *ProjectsLocationsPersistentResourcesOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsPersistentResourcesGetCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsGetCall) 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_ { @@ -100773,16 +101827,14 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) doRequest(alt string) (*ht return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "aiplatform.projects.locations.persistentResources.get" call. -// Exactly one of *GoogleCloudAiplatformV1PersistentResource or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudAiplatformV1PersistentResource.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1PersistentResource, error) { +// Do executes the "aiplatform.projects.locations.persistentResources.operations.get" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -100801,7 +101853,7 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) Do(opts ...googleapi.CallO if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudAiplatformV1PersistentResource{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -100813,25 +101865,25 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) Do(opts ...googleapi.CallO } return ret, nil // { - // "description": "Gets a PersistentResource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", // "httpMethod": "GET", - // "id": "aiplatform.projects.locations.persistentResources.get", + // "id": "aiplatform.projects.locations.persistentResources.operations.get", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", // "required": true, // "type": "string" // } // }, // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleCloudAiplatformV1PersistentResource" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -100840,40 +101892,45 @@ func (c *ProjectsLocationsPersistentResourcesGetCall) Do(opts ...googleapi.CallO } -// method id "aiplatform.projects.locations.persistentResources.list": +// method id "aiplatform.projects.locations.persistentResources.operations.list": -type ProjectsLocationsPersistentResourcesListCall struct { +type ProjectsLocationsPersistentResourcesOperationsListCall struct { s *Service - parent string + name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } -// List: Lists PersistentResources in a Location. +// List: Lists operations that match the specified filter in the +// request. If the server doesn't support this method, it returns +// `UNIMPLEMENTED`. // -// - parent: The resource name of the Location to list the -// PersistentResources from. Format: -// `projects/{project}/locations/{location}`. -func (r *ProjectsLocationsPersistentResourcesService) List(parent string) *ProjectsLocationsPersistentResourcesListCall { - c := &ProjectsLocationsPersistentResourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent +// - name: The name of the operation's parent resource. +func (r *ProjectsLocationsPersistentResourcesOperationsService) List(name string) *ProjectsLocationsPersistentResourcesOperationsListCall { + c := &ProjectsLocationsPersistentResourcesOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) Filter(filter string) *ProjectsLocationsPersistentResourcesOperationsListCall { + c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": The standard list // page size. -func (c *ProjectsLocationsPersistentResourcesListCall) PageSize(pageSize int64) *ProjectsLocationsPersistentResourcesListCall { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsPersistentResourcesOperationsListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": The standard list -// page token. Typically obtained via -// ListPersistentResourceResponse.next_page_token of the previous -// PersistentResourceService.ListPersistentResource call. -func (c *ProjectsLocationsPersistentResourcesListCall) PageToken(pageToken string) *ProjectsLocationsPersistentResourcesListCall { +// page token. +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) PageToken(pageToken string) *ProjectsLocationsPersistentResourcesOperationsListCall { c.urlParams_.Set("pageToken", pageToken) return c } @@ -100881,7 +101938,7 @@ func (c *ProjectsLocationsPersistentResourcesListCall) PageToken(pageToken strin // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsPersistentResourcesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesListCall { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesOperationsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -100891,7 +101948,7 @@ func (c *ProjectsLocationsPersistentResourcesListCall) Fields(s ...googleapi.Fie // 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 *ProjectsLocationsPersistentResourcesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesListCall { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPersistentResourcesOperationsListCall { c.ifNoneMatch_ = entityTag return c } @@ -100899,21 +101956,21 @@ func (c *ProjectsLocationsPersistentResourcesListCall) IfNoneMatch(entityTag str // 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 *ProjectsLocationsPersistentResourcesListCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesListCall { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesOperationsListCall { 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 *ProjectsLocationsPersistentResourcesListCall) Header() http.Header { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsPersistentResourcesListCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) 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_ { @@ -100926,7 +101983,7 @@ func (c *ProjectsLocationsPersistentResourcesListCall) doRequest(alt string) (*h var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/persistentResources") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -100934,22 +101991,20 @@ func (c *ProjectsLocationsPersistentResourcesListCall) doRequest(alt string) (*h } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "parent": c.parent, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "aiplatform.projects.locations.persistentResources.list" call. -// Exactly one of -// *GoogleCloudAiplatformV1ListPersistentResourcesResponse or error will +// Do executes the "aiplatform.projects.locations.persistentResources.operations.list" call. +// Exactly one of *GoogleLongrunningListOperationsResponse or error will // be non-nil. Any non-2xx status code is an error. Response headers are // in either -// *GoogleCloudAiplatformV1ListPersistentResourcesResponse.ServerResponse -// .Header 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 *ProjectsLocationsPersistentResourcesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1ListPersistentResourcesResponse, error) { +// *GoogleLongrunningListOperationsResponse.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -100968,7 +102023,7 @@ func (c *ProjectsLocationsPersistentResourcesListCall) Do(opts ...googleapi.Call if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudAiplatformV1ListPersistentResourcesResponse{ + ret := &GoogleLongrunningListOperationsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -100980,36 +102035,41 @@ func (c *ProjectsLocationsPersistentResourcesListCall) Do(opts ...googleapi.Call } return ret, nil // { - // "description": "Lists PersistentResources in a Location.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources", + // "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations", // "httpMethod": "GET", - // "id": "aiplatform.projects.locations.persistentResources.list", + // "id": "aiplatform.projects.locations.persistentResources.operations.list", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "required": true, + // "type": "string" + // }, // "pageSize": { - // "description": "Optional. The standard list page size.", + // "description": "The standard list page size.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "Optional. The standard list page token. Typically obtained via ListPersistentResourceResponse.next_page_token of the previous PersistentResourceService.ListPersistentResource call.", + // "description": "The standard list page token.", // "location": "query", // "type": "string" - // }, - // "parent": { - // "description": "Required. The resource name of the Location to list the PersistentResources from. Format: `projects/{project}/locations/{location}`", - // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+$", - // "required": true, - // "type": "string" // } // }, - // "path": "v1/{+parent}/persistentResources", + // "path": "v1/{+name}/operations", // "response": { - // "$ref": "GoogleCloudAiplatformV1ListPersistentResourcesResponse" + // "$ref": "GoogleLongrunningListOperationsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -101021,7 +102081,7 @@ func (c *ProjectsLocationsPersistentResourcesListCall) Do(opts ...googleapi.Call // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. -func (c *ProjectsLocationsPersistentResourcesListCall) Pages(ctx context.Context, f func(*GoogleCloudAiplatformV1ListPersistentResourcesResponse) error) error { +func (c *ProjectsLocationsPersistentResourcesOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -101039,39 +102099,47 @@ func (c *ProjectsLocationsPersistentResourcesListCall) Pages(ctx context.Context } } -// method id "aiplatform.projects.locations.persistentResources.patch": +// method id "aiplatform.projects.locations.persistentResources.operations.wait": -type ProjectsLocationsPersistentResourcesPatchCall struct { - s *Service - name string - googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsPersistentResourcesOperationsWaitCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Patch: Updates a PersistentResource. +// Wait: Waits until the specified long-running operation is done or +// reaches at most a specified timeout, returning the latest state. If +// the operation is already done, the latest state is immediately +// returned. If the timeout specified is greater than the default +// HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does +// not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. +// Note that this method is on a best-effort basis. It may return the +// latest state before the specified timeout (including immediately), +// meaning even an immediate response is no guarantee that the operation +// is done. // -// - name: Immutable. Resource name of a PersistentResource. -func (r *ProjectsLocationsPersistentResourcesService) Patch(name string, googlecloudaiplatformv1persistentresource *GoogleCloudAiplatformV1PersistentResource) *ProjectsLocationsPersistentResourcesPatchCall { - c := &ProjectsLocationsPersistentResourcesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource to wait on. +func (r *ProjectsLocationsPersistentResourcesOperationsService) Wait(name string) *ProjectsLocationsPersistentResourcesOperationsWaitCall { + c := &ProjectsLocationsPersistentResourcesOperationsWaitCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name - c.googlecloudaiplatformv1persistentresource = googlecloudaiplatformv1persistentresource return c } -// UpdateMask sets the optional parameter "updateMask": Required. -// Specify the fields to be overwritten in the PersistentResource by the -// update method. -func (c *ProjectsLocationsPersistentResourcesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPersistentResourcesPatchCall { - c.urlParams_.Set("updateMask", updateMask) +// Timeout sets the optional parameter "timeout": The maximum duration +// to wait before timing out. If left blank, the wait will be at most +// the time permitted by the underlying HTTP/RPC protocol. If RPC +// context deadline is also specified, the shorter one will be used. +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) Timeout(timeout string) *ProjectsLocationsPersistentResourcesOperationsWaitCall { + c.urlParams_.Set("timeout", timeout) 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 *ProjectsLocationsPersistentResourcesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesPatchCall { +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesOperationsWaitCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -101079,21 +102147,21 @@ func (c *ProjectsLocationsPersistentResourcesPatchCall) Fields(s ...googleapi.Fi // 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 *ProjectsLocationsPersistentResourcesPatchCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesPatchCall { +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesOperationsWaitCall { 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 *ProjectsLocationsPersistentResourcesPatchCall) Header() http.Header { +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsPersistentResourcesPatchCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) 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_ { @@ -101101,16 +102169,11 @@ func (c *ProjectsLocationsPersistentResourcesPatchCall) doRequest(alt string) (* } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1persistentresource) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:wait") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("PATCH", urls, body) + req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } @@ -101121,14 +102184,14 @@ func (c *ProjectsLocationsPersistentResourcesPatchCall) doRequest(alt string) (* return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "aiplatform.projects.locations.persistentResources.patch" call. +// Do executes the "aiplatform.projects.locations.persistentResources.operations.wait" call. // Exactly one of *GoogleLongrunningOperation or error will be non-nil. // Any non-2xx status code is an error. Response headers are in either // *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsPersistentResourcesOperationsWaitCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -101159,32 +102222,29 @@ func (c *ProjectsLocationsPersistentResourcesPatchCall) Do(opts ...googleapi.Cal } return ret, nil // { - // "description": "Updates a PersistentResource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", - // "httpMethod": "PATCH", - // "id": "aiplatform.projects.locations.persistentResources.patch", + // "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:wait", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.persistentResources.operations.wait", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Immutable. Resource name of a PersistentResource.", + // "description": "The name of the operation resource to wait on.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", // "required": true, // "type": "string" // }, - // "updateMask": { - // "description": "Required. Specify the fields to be overwritten in the PersistentResource by the update method.", - // "format": "google-fieldmask", + // "timeout": { + // "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + // "format": "google-duration", // "location": "query", // "type": "string" // } // }, - // "path": "v1/{+name}", - // "request": { - // "$ref": "GoogleCloudAiplatformV1PersistentResource" - // }, + // "path": "v1/{+name}:wait", // "response": { // "$ref": "GoogleLongrunningOperation" // }, diff --git a/aiplatform/v1beta1/aiplatform-api.json b/aiplatform/v1beta1/aiplatform-api.json index 59ba30e19b6..efb95fe2fd7 100644 --- a/aiplatform/v1beta1/aiplatform-api.json +++ b/aiplatform/v1beta1/aiplatform-api.json @@ -3428,7 +3428,7 @@ ], "parameters": { "filter": { - "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports = and !=. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports = and, != * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:* or labels:key - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports = Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", + "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports `=` and `!=`. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports `=` and `!=`. * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:*` or `labels:key` - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports `=`. Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", "location": "query", "type": "string" }, @@ -4492,7 +4492,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Mask specifying which fields to update. Supported fields: * `display_name` * `description`", + "description": "Required. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `tool_use_examples`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4508,6 +4508,34 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "query": { + "description": "Queries an extension with a default controller.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/extensions/{extensionsId}:query", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.extensions.query", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name (identifier) of the extension; Format: `projects/{project}/locations/{location}/extensions/{extension}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/extensions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:query", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1QueryExtensionRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1QueryExtensionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -5973,6 +6001,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "streamingFetchFeatureValues": { + "description": "Bidirectional streaming RPC to fetch feature values under a FeatureView. Requests may not have a one-to-one mapping to responses and responses may be returned out-of-order to reduce latency.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/featureOnlineStores/{featureOnlineStoresId}/featureViews/{featureViewsId}:streamingFetchFeatureValues", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.featureOnlineStores.featureViews.streamingFetchFeatureValues", + "parameterOrder": [ + "featureView" + ], + "parameters": { + "featureView": { + "description": "Required. FeatureView resource format `projects/{project}/locations/{location}/featureOnlineStores/{featureOnlineStore}/featureViews/{featureView}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/featureOnlineStores/[^/]+/featureViews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+featureView}:streamingFetchFeatureValues", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "sync": { "description": "Triggers on-demand sync for the FeatureView.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/featureOnlineStores/{featureOnlineStoresId}/featureViews/{featureViewsId}:sync", @@ -13387,6 +13443,34 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "reboot": { + "description": "Reboots a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.reboot", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:reboot", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -18168,7 +18252,7 @@ } } }, - "revision": "20240313", + "revision": "20240320", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionEmbedVideoResponse": { @@ -19696,7 +19780,7 @@ "id": "GoogleCloudAiplatformV1beta1AuthConfigApiKeyConfig", "properties": { "apiKeySecret": { - "description": "Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`", + "description": "Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}` - If specified, the `secretmanager.versions.access` permission should be granted to Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) on the specified resource.", "type": "string" }, "httpElementLocation": { @@ -19731,7 +19815,7 @@ "id": "GoogleCloudAiplatformV1beta1AuthConfigGoogleServiceAccountConfig", "properties": { "serviceAccount": { - "description": "Optional. The service account that the extension execution service runs as. - If it is not specified, the Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) will be used. - If the service account is provided, the service account should grant Vertex AI Extension Service Agent `iam.serviceAccounts.getAccessToken` permission.", + "description": "Optional. The service account that the extension execution service runs as. - If the service account is specified, the `iam.serviceAccounts.getAccessToken` permission should be granted to Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) on the specified service account. - If not specified, the Vertex AI Extension Service Agent will be used to execute the Extension.", "type": "string" } }, @@ -19742,7 +19826,7 @@ "id": "GoogleCloudAiplatformV1beta1AuthConfigHttpBasicAuthConfig", "properties": { "credentialSecret": { - "description": "Required. The name of the SecretManager secret version resource storing the base64 encoded credentials. Format: `projects/{project}/secrets/{secrete}/versions/{version}`", + "description": "Required. The name of the SecretManager secret version resource storing the base64 encoded credentials. Format: `projects/{project}/secrets/{secrete}/versions/{version}` - If specified, the `secretmanager.versions.access` permission should be granted to Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) on the specified resource.", "type": "string" } }, @@ -19759,11 +19843,11 @@ "id": "GoogleCloudAiplatformV1beta1AuthConfigOauthConfig", "properties": { "accessToken": { - "description": "Access token for extension endpoint. Only used to propagate token from ExecuteExtensionRequest.runtime_auth_config at request time.", + "description": "Access token for extension endpoint. Only used to propagate token from [[ExecuteExtensionRequest.runtime_auth_config]] at request time.", "type": "string" }, "serviceAccount": { - "description": "The service account that the extension execution service will use to query extension. Used for generating OAuth token on behalf of provided service account. - If the service account is provided, the service account should grant Vertex AI Service Agent `iam.serviceAccounts.getAccessToken` permission.", + "description": "The service account used to generate access tokens for executing the Extension. - If the service account is specified, the `iam.serviceAccounts.getAccessToken` permission should be granted to Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) on the provided service account.", "type": "string" } }, @@ -19774,7 +19858,11 @@ "id": "GoogleCloudAiplatformV1beta1AuthConfigOidcConfig", "properties": { "idToken": { - "description": "OpenID Connect formatted ID token for extension endpoint. Only used to propagate token from ExecuteExtensionRequest.runtime_auth_config at request time.", + "description": "OpenID Connect formatted ID token for extension endpoint. Only used to propagate token from [[ExecuteExtensionRequest.runtime_auth_config]] at request time.", + "type": "string" + }, + "serviceAccount": { + "description": "The service account used to generate an OpenID Connect (OIDC)-compatible JWT token signed by the Google OIDC Provider (accounts.google.com) for extension endpoint (https://cloud.google.com/iam/docs/create-short-lived-credentials-direct#sa-credentials-oidc). - The audience for the token will be set to the URL in the server url defined in the OpenApi spec. - If the service account is provided, the service account should grant `iam.serviceAccounts.getOpenIdToken` permission to Vertex AI Extension Service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents).", "type": "string" } }, @@ -20667,6 +20755,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1CheckPoint": { + "description": "Placeholder for all checkpoint related data. Any data needed to restore a request and more go/vertex-extension-query-operation", + "id": "GoogleCloudAiplatformV1beta1CheckPoint", + "properties": { + "content": { + "description": "Required. encoded checkpoint", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateMetatdata": { "description": "This message will be placed in the metadata field of a google.longrunning.Operation associated with a CheckTrialEarlyStoppingState request.", "id": "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateMetatdata", @@ -22920,7 +23019,7 @@ "id": "GoogleCloudAiplatformV1beta1ExecuteExtensionRequest", "properties": { "operationId": { - "description": "Required. The operation to be executed in this extension as defined in ExtensionOperation.operation_id.", + "description": "Required. The desired ID of the operation to be executed in this extension as defined in ExtensionOperation.operation_id.", "type": "string" }, "operationParams": { @@ -22945,15 +23044,6 @@ "content": { "description": "Response content from the extension. The content should be conformant to the response.content schema in the extension's manifest/OpenAPI spec.", "type": "string" - }, - "output": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "deprecated": true, - "description": "Output from the extension. The output should be conformant to the extension's manifest/OpenAPI spec. The output can contain values for keys like \"content\", \"headers\", etc. This field is deprecated, please use content field below for the extension execution result.", - "type": "object" } }, "type": "object" @@ -23039,6 +23129,56 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ExecutionPlan": { + "description": "Execution plan for a request.", + "id": "GoogleCloudAiplatformV1beta1ExecutionPlan", + "properties": { + "steps": { + "description": "Required. Sequence of steps to execute a request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1ExecutionPlanStep" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ExecutionPlanStep": { + "description": "Single step in query execution plan.", + "id": "GoogleCloudAiplatformV1beta1ExecutionPlanStep", + "properties": { + "extensionExecution": { + "$ref": "GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution", + "description": "Extension execution step." + }, + "respondToUser": { + "$ref": "GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser", + "description": "Respond to user step." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution": { + "description": "Extension execution step.", + "id": "GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution", + "properties": { + "extension": { + "description": "Required. extension resource name", + "type": "string" + }, + "operationId": { + "description": "Required. the operation id", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser": { + "description": "Respond to user step.", + "id": "GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ExplainRequest": { "description": "Request message for PredictionService.Explain.", "id": "GoogleCloudAiplatformV1beta1ExplainRequest", @@ -24893,6 +25033,10 @@ "description": "Response message for FeatureOnlineStoreService.FetchFeatureValues", "id": "GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse", "properties": { + "dataKey": { + "$ref": "GoogleCloudAiplatformV1beta1FeatureViewDataKey", + "description": "The data key associated with this response. Will only be populated for FeatureOnlineStoreService.StreamingFetchFeatureValues RPCs." + }, "keyValues": { "$ref": "GoogleCloudAiplatformV1beta1FetchFeatureValuesResponseFeatureNameValuePairList", "description": "Feature values in KeyValue format." @@ -25233,13 +25377,6 @@ }, "type": "array" }, - "systemInstructions": { - "description": "Optional. The user provided system instructions for the model.", - "items": { - "$ref": "GoogleCloudAiplatformV1beta1Content" - }, - "type": "array" - }, "tools": { "description": "Optional. A list of `Tools` the model may use to generate the next response. A `Tool` is a piece of code that enables the system to interact with external systems to perform an action, or set of actions, outside of knowledge and scope of the model.", "items": { @@ -30780,6 +30917,10 @@ "$ref": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployGke", "description": "Optional. Deploy PublisherModel to Google Kubernetes Engine." }, + "multiDeployVertex": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex", + "description": "Optional. Multiple setups to deploy the PublisherModel to Vertex Endpoint." + }, "openEvaluationPipeline": { "$ref": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionRegionalResourceReferences", "description": "Optional. Open evaluation pipeline of the PublisherModel." @@ -30880,6 +31021,20 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex": { + "description": "Multiple setups to deploy the PublisherModel.", + "id": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex", + "properties": { + "multiDeployVertex": { + "description": "Optional. One click deployment configurations.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeploy" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1PublisherModelCallToActionOpenFineTuningPipelines": { "description": "Open fine tuning pipelines.", "id": "GoogleCloudAiplatformV1beta1PublisherModelCallToActionOpenFineTuningPipelines", @@ -31218,6 +31373,143 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1QueryExtensionRequest": { + "description": "Request message for ExtensionExecutionService.QueryExtension.", + "id": "GoogleCloudAiplatformV1beta1QueryExtensionRequest", + "properties": { + "contents": { + "description": "Required. The content of the current conversation with the model. For single-turn queries, this is a single instance. For multi-turn queries, this is a repeated field that contains conversation history + latest request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Content" + }, + "type": "array" + }, + "query": { + "$ref": "GoogleCloudAiplatformV1beta1QueryRequestQuery", + "deprecated": true, + "description": "Required. User provided input query message." + }, + "useFunctionCall": { + "description": "Optional. Experiment control on whether to use function call.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1QueryExtensionResponse": { + "description": "Response message for ExtensionExecutionService.QueryExtension.", + "id": "GoogleCloudAiplatformV1beta1QueryExtensionResponse", + "properties": { + "failureMessage": { + "description": "Failure message if any.", + "type": "string" + }, + "metadata": { + "$ref": "GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata", + "deprecated": true, + "description": "Metadata related to the query execution." + }, + "queryResponseMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata", + "deprecated": true + }, + "response": { + "deprecated": true, + "description": "Response to the user's query.", + "type": "string" + }, + "steps": { + "description": "Steps of extension or LLM interaction, can contain function call, function response, or text response. The last step contains the final response to the query.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Content" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1QueryRequestQuery": { + "description": "User provided query message.", + "id": "GoogleCloudAiplatformV1beta1QueryRequestQuery", + "properties": { + "query": { + "description": "Required. The query from user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata": { + "id": "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata", + "properties": { + "steps": { + "description": "ReAgent execution steps.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps" + }, + "type": "array" + }, + "useCreativity": { + "description": "Whether the reasoning agent used creativity (instead of extensions provided) to build the response.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps": { + "description": "ReAgent execution steps.", + "id": "GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps", + "properties": { + "error": { + "description": "Error messages from the extension or during response parsing.", + "type": "string" + }, + "extensionInstruction": { + "description": "Planner's instruction to the extension.", + "type": "string" + }, + "extensionInvoked": { + "description": "Planner's choice of extension to invoke.", + "type": "string" + }, + "response": { + "description": "Response of the extension.", + "type": "string" + }, + "success": { + "description": "When set to False, either the extension fails to execute or the response cannot be summarized.", + "type": "boolean" + }, + "thought": { + "description": "Planner's thought.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata": { + "description": "Metadata for response", + "id": "GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata", + "properties": { + "checkpoint": { + "$ref": "GoogleCloudAiplatformV1beta1CheckPoint", + "description": "Optional. Checkpoint to restore a request" + }, + "executionPlan": { + "$ref": "GoogleCloudAiplatformV1beta1ExecutionPlan", + "description": "Optional. Execution plan for the request." + }, + "flowOutputs": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "To surface the v2 flow output.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1RawPredictRequest": { "description": "Request message for PredictionService.RawPredict.", "id": "GoogleCloudAiplatformV1beta1RawPredictRequest", @@ -31486,6 +31778,12 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest": { + "description": "Request message for PersistentResourceService.RebootPersistentResource.", + "id": "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1RemoveContextChildrenRequest": { "description": "Request message for MetadataService.DeleteContextChildrenRequest.", "id": "GoogleCloudAiplatformV1beta1RemoveContextChildrenRequest", @@ -32183,6 +32481,10 @@ "description": "Schema is used to define the format of input/output data. Represents a select subset of an [OpenAPI 3.0 schema object](https://spec.openapis.org/oas/v3.0.3#schema). More fields may be added in the future as needed.", "id": "GoogleCloudAiplatformV1beta1Schema", "properties": { + "default": { + "description": "Optional. Default value of the data.", + "type": "any" + }, "description": { "description": "Optional. The description of the data.", "type": "string" @@ -32199,22 +32501,66 @@ "type": "any" }, "format": { - "description": "Optional. The format of the data. Supported formats: for NUMBER type: float, double for INTEGER type: int32, int64", + "description": "Optional. The format of the data. Supported formats: for NUMBER type: \"float\", \"double\" for INTEGER type: \"int32\", \"int64\" for STRING type: \"email\", \"byte\", etc", "type": "string" }, "items": { "$ref": "GoogleCloudAiplatformV1beta1Schema", - "description": "Optional. Schema of the elements of Type.ARRAY." + "description": "Optional. SCHEMA FIELDS FOR TYPE ARRAY Schema of the elements of Type.ARRAY." + }, + "maxItems": { + "description": "Optional. Maximum number of the elements for Type.ARRAY.", + "format": "int64", + "type": "string" + }, + "maxLength": { + "description": "Optional. Maximum length of the Type.STRING", + "format": "int64", + "type": "string" + }, + "maxProperties": { + "description": "Optional. Maximum number of the properties for Type.OBJECT.", + "format": "int64", + "type": "string" + }, + "maximum": { + "description": "Optional. Maximum value of the Type.INTEGER and Type.NUMBER", + "format": "double", + "type": "number" + }, + "minItems": { + "description": "Optional. Minimum number of the elements for Type.ARRAY.", + "format": "int64", + "type": "string" + }, + "minLength": { + "description": "Optional. SCHEMA FIELDS FOR TYPE STRING Minimum length of the Type.STRING", + "format": "int64", + "type": "string" + }, + "minProperties": { + "description": "Optional. Minimum number of the properties for Type.OBJECT.", + "format": "int64", + "type": "string" + }, + "minimum": { + "description": "Optional. SCHEMA FIELDS FOR TYPE INTEGER and NUMBER Minimum value of the Type.INTEGER and Type.NUMBER", + "format": "double", + "type": "number" }, "nullable": { "description": "Optional. Indicates if the value may be null.", "type": "boolean" }, + "pattern": { + "description": "Optional. Pattern of the Type.STRING to restrict a string to a regular expression.", + "type": "string" + }, "properties": { "additionalProperties": { "$ref": "GoogleCloudAiplatformV1beta1Schema" }, - "description": "Optional. Properties of Type.OBJECT.", + "description": "Optional. SCHEMA FIELDS FOR TYPE OBJECT Properties of Type.OBJECT.", "type": "object" }, "required": { @@ -32224,6 +32570,10 @@ }, "type": "array" }, + "title": { + "description": "Optional. The title of the Schema.", + "type": "string" + }, "type": { "description": "Optional. The type of the data.", "enum": [ @@ -36174,6 +36524,56 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest": { + "description": "Request message for FeatureOnlineStoreService.StreamingFetchFeatureValues. For the entities requested, all features under the requested feature view will be returned.", + "id": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest", + "properties": { + "dataFormat": { + "description": "Specify response data format. If not set, KeyValue format will be used.", + "enum": [ + "FEATURE_VIEW_DATA_FORMAT_UNSPECIFIED", + "KEY_VALUE", + "PROTO_STRUCT" + ], + "enumDescriptions": [ + "Not set. Will be treated as the KeyValue format.", + "Return response data in key-value format.", + "Return response data in proto Struct format." + ], + "type": "string" + }, + "dataKeys": { + "items": { + "$ref": "GoogleCloudAiplatformV1beta1FeatureViewDataKey" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse": { + "description": "Response message for FeatureOnlineStoreService.StreamingFetchFeatureValues.", + "id": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse", + "properties": { + "data": { + "items": { + "$ref": "GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse" + }, + "type": "array" + }, + "dataKeysWithError": { + "items": { + "$ref": "GoogleCloudAiplatformV1beta1FeatureViewDataKey" + }, + "type": "array" + }, + "status": { + "$ref": "GoogleRpcStatus", + "description": "Response status. If OK, then StreamingFetchFeatureValuesResponse.data will be populated. Otherwise StreamingFetchFeatureValuesResponse.data_keys_with_error will be populated with the appropriate data keys. The error only applies to the listed data keys - the stream will remain open for further FeatureOnlineStoreService.StreamingFetchFeatureValuesRequest requests." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1StreamingPredictRequest": { "description": "Request message for PredictionService.StreamingPredict. The first message must contain endpoint field and optionally input. The subsequent messages must contain input.", "id": "GoogleCloudAiplatformV1beta1StreamingPredictRequest", @@ -38174,7 +38574,7 @@ "id": "GoogleCloudAiplatformV1beta1VertexAISearch", "properties": { "datastore": { - "description": "Required. Fully-qualified Vertex AI Search's datastore resource ID. projects/\u003c\u003e/locations/\u003c\u003e/collections/\u003c\u003e/dataStores/\u003c\u003e", + "description": "Required. Fully-qualified Vertex AI Search's datastore resource ID. Format: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}", "type": "string" } }, @@ -38963,6 +39363,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -39288,6 +39690,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset.", "Mobile assistant finetune datasets.", "", @@ -39727,6 +40131,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -40052,6 +40458,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset.", "Mobile assistant finetune datasets.", "", @@ -40502,6 +40910,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -40827,6 +41237,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset", "Mobile assistant finetune datasets.", "", @@ -41266,6 +41678,8 @@ "DUET_GOOGLESQL_GENERATION", "DUET_CLOUD_IX_PROMPTS", "DUET_RAD", + "DUET_STACKOVERFLOW_ISSUES", + "DUET_STACKOVERFLOW_ANSWERS", "BARD_ARCADE_GITHUB", "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K", "MOBILE_ASSISTANT_PALM24B_FILTERED_400K", @@ -41591,6 +42005,8 @@ "", "", "", + "", + "", "Bard ARCADE finetune dataset", "Mobile assistant finetune datasets.", "", @@ -42283,7 +42699,7 @@ "id": "LearningGenaiRootGroundingMetadataCitation", "properties": { "endIndex": { - "description": "Index in the prediction output where the citation ends (exclusive). Must be \u003e start_index and \u003c len(output).", + "description": "Index in the prediction output where the citation ends (exclusive). Must be \u003e start_index and \u003c= len(output).", "format": "int32", "type": "integer" }, @@ -43073,14 +43489,16 @@ "RETURN", "STOP", "MAX_TOKENS", - "FILTER" + "FILTER", + "TOP_N_FILTERED" ], "enumDescriptions": [ "", "Return all the tokens back. This typically implies no filtering or stop sequence was triggered.", "Finished due to provided stop sequence.", "Model has emitted the maximum number of tokens as specified by max_decoding_steps.", - "Finished due to triggering some post-processing filter." + "Finished due to triggering some post-processing filter.", + "Filtered out due to Top_N \u003c Response_Candidates.Size()" ], "type": "string" }, diff --git a/aiplatform/v1beta1/aiplatform-gen.go b/aiplatform/v1beta1/aiplatform-gen.go index 7239c1316a4..d4f29103382 100644 --- a/aiplatform/v1beta1/aiplatform-gen.go +++ b/aiplatform/v1beta1/aiplatform-gen.go @@ -3845,7 +3845,11 @@ func (s *GoogleCloudAiplatformV1beta1AuthConfig) MarshalJSON() ([]byte, error) { type GoogleCloudAiplatformV1beta1AuthConfigApiKeyConfig struct { // ApiKeySecret: Required. The name of the SecretManager secret version // resource storing the API key. Format: - // `projects/{project}/secrets/{secrete}/versions/{version}` + // `projects/{project}/secrets/{secrete}/versions/{version}` - If + // specified, the `secretmanager.versions.access` permission should be + // granted to Vertex AI Extension Service Agent + // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) + // on the specified resource. ApiKeySecret string `json:"apiKeySecret,omitempty"` // HttpElementLocation: Required. The location of the API key. @@ -3891,12 +3895,12 @@ func (s *GoogleCloudAiplatformV1beta1AuthConfigApiKeyConfig) MarshalJSON() ([]by // Config for Google Service Account Authentication. type GoogleCloudAiplatformV1beta1AuthConfigGoogleServiceAccountConfig struct { // ServiceAccount: Optional. The service account that the extension - // execution service runs as. - If it is not specified, the Vertex AI - // Extension Service Agent + // execution service runs as. - If the service account is specified, the + // `iam.serviceAccounts.getAccessToken` permission should be granted to + // Vertex AI Extension Service Agent // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) - // will be used. - If the service account is provided, the service - // account should grant Vertex AI Extension Service Agent - // `iam.serviceAccounts.getAccessToken` permission. + // on the specified service account. - If not specified, the Vertex AI + // Extension Service Agent will be used to execute the Extension. ServiceAccount string `json:"serviceAccount,omitempty"` // ForceSendFields is a list of field names (e.g. "ServiceAccount") to @@ -3928,7 +3932,11 @@ func (s *GoogleCloudAiplatformV1beta1AuthConfigGoogleServiceAccountConfig) Marsh type GoogleCloudAiplatformV1beta1AuthConfigHttpBasicAuthConfig struct { // CredentialSecret: Required. The name of the SecretManager secret // version resource storing the base64 encoded credentials. Format: - // `projects/{project}/secrets/{secrete}/versions/{version}` + // `projects/{project}/secrets/{secrete}/versions/{version}` - If + // specified, the `secretmanager.versions.access` permission should be + // granted to Vertex AI Extension Service Agent + // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) + // on the specified resource. CredentialSecret string `json:"credentialSecret,omitempty"` // ForceSendFields is a list of field names (e.g. "CredentialSecret") to @@ -3964,15 +3972,16 @@ type GoogleCloudAiplatformV1beta1AuthConfigNoAuth struct { // oauth. type GoogleCloudAiplatformV1beta1AuthConfigOauthConfig struct { // AccessToken: Access token for extension endpoint. Only used to - // propagate token from ExecuteExtensionRequest.runtime_auth_config at - // request time. + // propagate token from [[ExecuteExtensionRequest.runtime_auth_config]] + // at request time. AccessToken string `json:"accessToken,omitempty"` - // ServiceAccount: The service account that the extension execution - // service will use to query extension. Used for generating OAuth token - // on behalf of provided service account. - If the service account is - // provided, the service account should grant Vertex AI Service Agent - // `iam.serviceAccounts.getAccessToken` permission. + // ServiceAccount: The service account used to generate access tokens + // for executing the Extension. - If the service account is specified, + // the `iam.serviceAccounts.getAccessToken` permission should be granted + // to Vertex AI Extension Service Agent + // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) + // on the provided service account. ServiceAccount string `json:"serviceAccount,omitempty"` // ForceSendFields is a list of field names (e.g. "AccessToken") to @@ -4003,9 +4012,20 @@ func (s *GoogleCloudAiplatformV1beta1AuthConfigOauthConfig) MarshalJSON() ([]byt type GoogleCloudAiplatformV1beta1AuthConfigOidcConfig struct { // IdToken: OpenID Connect formatted ID token for extension endpoint. // Only used to propagate token from - // ExecuteExtensionRequest.runtime_auth_config at request time. + // [[ExecuteExtensionRequest.runtime_auth_config]] at request time. IdToken string `json:"idToken,omitempty"` + // ServiceAccount: The service account used to generate an OpenID + // Connect (OIDC)-compatible JWT token signed by the Google OIDC + // Provider (accounts.google.com) for extension endpoint + // (https://cloud.google.com/iam/docs/create-short-lived-credentials-direct#sa-credentials-oidc). + // - The audience for the token will be set to the URL in the server url + // defined in the OpenApi spec. - If the service account is provided, + // the service account should grant `iam.serviceAccounts.getOpenIdToken` + // permission to Vertex AI Extension Service Agent + // (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents). + ServiceAccount string `json:"serviceAccount,omitempty"` + // ForceSendFields is a list of field names (e.g. "IdToken") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -5765,6 +5785,36 @@ func (s *GoogleCloudAiplatformV1beta1Candidate) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1beta1CheckPoint: Placeholder for all +// checkpoint related data. Any data needed to restore a request and +// more go/vertex-extension-query-operation +type GoogleCloudAiplatformV1beta1CheckPoint struct { + // Content: Required. encoded checkpoint + Content string `json:"content,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") 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. "Content") 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 *GoogleCloudAiplatformV1beta1CheckPoint) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1CheckPoint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateMetatdata: // This message will be placed in the metadata field of a // google.longrunning.Operation associated with a @@ -10035,8 +10085,8 @@ func (s *GoogleCloudAiplatformV1beta1ExamplesRestrictionsNamespace) MarshalJSON( // GoogleCloudAiplatformV1beta1ExecuteExtensionRequest: Request message // for ExtensionExecutionService.ExecuteExtension. type GoogleCloudAiplatformV1beta1ExecuteExtensionRequest struct { - // OperationId: Required. The operation to be executed in this extension - // as defined in ExtensionOperation.operation_id. + // OperationId: Required. The desired ID of the operation to be executed + // in this extension as defined in ExtensionOperation.operation_id. OperationId string `json:"operationId,omitempty"` // OperationParams: Optional. Request parameters that will be used for @@ -10083,12 +10133,6 @@ type GoogleCloudAiplatformV1beta1ExecuteExtensionResponse struct { // manifest/OpenAPI spec. Content string `json:"content,omitempty"` - // Output: Output from the extension. The output should be conformant to - // the extension's manifest/OpenAPI spec. The output can contain values - // for keys like "content", "headers", etc. This field is deprecated, - // please use content field below for the extension execution result. - Output googleapi.RawMessage `json:"output,omitempty"` - // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -10207,6 +10251,105 @@ func (s *GoogleCloudAiplatformV1beta1Execution) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1beta1ExecutionPlan: Execution plan for a +// request. +type GoogleCloudAiplatformV1beta1ExecutionPlan struct { + // Steps: Required. Sequence of steps to execute a request. + Steps []*GoogleCloudAiplatformV1beta1ExecutionPlanStep `json:"steps,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Steps") 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. "Steps") 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 *GoogleCloudAiplatformV1beta1ExecutionPlan) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1ExecutionPlan + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1ExecutionPlanStep: Single step in query +// execution plan. +type GoogleCloudAiplatformV1beta1ExecutionPlanStep struct { + // ExtensionExecution: Extension execution step. + ExtensionExecution *GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution `json:"extensionExecution,omitempty"` + + // RespondToUser: Respond to user step. + RespondToUser *GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser `json:"respondToUser,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExtensionExecution") + // 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. "ExtensionExecution") 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 *GoogleCloudAiplatformV1beta1ExecutionPlanStep) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1ExecutionPlanStep + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution: +// Extension execution step. +type GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution struct { + // Extension: Required. extension resource name + Extension string `json:"extension,omitempty"` + + // OperationId: Required. the operation id + OperationId string `json:"operationId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Extension") 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. "Extension") 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 *GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1ExecutionPlanStepExtensionExecution + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser: Respond +// to user step. +type GoogleCloudAiplatformV1beta1ExecutionPlanStepRespondToUser struct { +} + // GoogleCloudAiplatformV1beta1ExplainRequest: Request message for // PredictionService.Explain. type GoogleCloudAiplatformV1beta1ExplainRequest struct { @@ -13691,6 +13834,11 @@ func (s *GoogleCloudAiplatformV1beta1FetchFeatureValuesRequest) MarshalJSON() ([ // GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse: Response // message for FeatureOnlineStoreService.FetchFeatureValues type GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse struct { + // DataKey: The data key associated with this response. Will only be + // populated for FeatureOnlineStoreService.StreamingFetchFeatureValues + // RPCs. + DataKey *GoogleCloudAiplatformV1beta1FeatureViewDataKey `json:"dataKey,omitempty"` + // KeyValues: Feature values in KeyValue format. KeyValues *GoogleCloudAiplatformV1beta1FetchFeatureValuesResponseFeatureNameValuePairList `json:"keyValues,omitempty"` @@ -13701,7 +13849,7 @@ type GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "KeyValues") to + // ForceSendFields is a list of field names (e.g. "DataKey") 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 @@ -13709,7 +13857,7 @@ type GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "KeyValues") to include in + // NullFields is a list of field names (e.g. "DataKey") 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 @@ -14454,10 +14602,6 @@ type GoogleCloudAiplatformV1beta1GenerateContentRequest struct { // content. Enforced on GenerateContentResponse.candidates. SafetySettings []*GoogleCloudAiplatformV1beta1SafetySetting `json:"safetySettings,omitempty"` - // SystemInstructions: Optional. The user provided system instructions - // for the model. - SystemInstructions []*GoogleCloudAiplatformV1beta1Content `json:"systemInstructions,omitempty"` - // Tools: Optional. A list of `Tools` the model may use to generate the // next response. A `Tool` is a piece of code that enables the system to // interact with external systems to perform an action, or set of @@ -24039,6 +24183,10 @@ type GoogleCloudAiplatformV1beta1PublisherModelCallToAction struct { // Engine. DeployGke *GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployGke `json:"deployGke,omitempty"` + // MultiDeployVertex: Optional. Multiple setups to deploy the + // PublisherModel to Vertex Endpoint. + MultiDeployVertex *GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex `json:"multiDeployVertex,omitempty"` + // OpenEvaluationPipeline: Optional. Open evaluation pipeline of the // PublisherModel. OpenEvaluationPipeline *GoogleCloudAiplatformV1beta1PublisherModelCallToActionRegionalResourceReferences `json:"openEvaluationPipeline,omitempty"` @@ -24194,6 +24342,36 @@ func (s *GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployGke) Marsha return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex: +// Multiple setups to deploy the PublisherModel. +type GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex struct { + // MultiDeployVertex: Optional. One click deployment configurations. + MultiDeployVertex []*GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeploy `json:"multiDeployVertex,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MultiDeployVertex") + // 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. "MultiDeployVertex") 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 *GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1PublisherModelCallToActionDeployVertex + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAiplatformV1beta1PublisherModelCallToActionOpenFineTuningPi // pelines: Open fine tuning pipelines. type GoogleCloudAiplatformV1beta1PublisherModelCallToActionOpenFineTuningPipelines struct { @@ -24840,6 +25018,232 @@ func (s *GoogleCloudAiplatformV1beta1QueryDeployedModelsResponse) MarshalJSON() return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1beta1QueryExtensionRequest: Request message +// for ExtensionExecutionService.QueryExtension. +type GoogleCloudAiplatformV1beta1QueryExtensionRequest struct { + // Contents: Required. The content of the current conversation with the + // model. For single-turn queries, this is a single instance. For + // multi-turn queries, this is a repeated field that contains + // conversation history + latest request. + Contents []*GoogleCloudAiplatformV1beta1Content `json:"contents,omitempty"` + + // Query: Required. User provided input query message. + Query *GoogleCloudAiplatformV1beta1QueryRequestQuery `json:"query,omitempty"` + + // UseFunctionCall: Optional. Experiment control on whether to use + // function call. + UseFunctionCall bool `json:"useFunctionCall,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Contents") 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. "Contents") 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 *GoogleCloudAiplatformV1beta1QueryExtensionRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryExtensionRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1QueryExtensionResponse: Response message +// for ExtensionExecutionService.QueryExtension. +type GoogleCloudAiplatformV1beta1QueryExtensionResponse struct { + // FailureMessage: Failure message if any. + FailureMessage string `json:"failureMessage,omitempty"` + + // Metadata: Metadata related to the query execution. + Metadata *GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata `json:"metadata,omitempty"` + + QueryResponseMetadata *GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata `json:"queryResponseMetadata,omitempty"` + + // Response: Response to the user's query. + Response string `json:"response,omitempty"` + + // Steps: Steps of extension or LLM interaction, can contain function + // call, function response, or text response. The last step contains the + // final response to the query. + Steps []*GoogleCloudAiplatformV1beta1Content `json:"steps,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "FailureMessage") 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. "FailureMessage") 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 *GoogleCloudAiplatformV1beta1QueryExtensionResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryExtensionResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1QueryRequestQuery: User provided query +// message. +type GoogleCloudAiplatformV1beta1QueryRequestQuery struct { + // Query: Required. The query from user. + Query string `json:"query,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Query") 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. "Query") 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 *GoogleCloudAiplatformV1beta1QueryRequestQuery) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryRequestQuery + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata struct { + // Steps: ReAgent execution steps. + Steps []*GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps `json:"steps,omitempty"` + + // UseCreativity: Whether the reasoning agent used creativity (instead + // of extensions provided) to build the response. + UseCreativity bool `json:"useCreativity,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Steps") 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. "Steps") 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 *GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentS +// teps: ReAgent execution steps. +type GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps struct { + // Error: Error messages from the extension or during response parsing. + Error string `json:"error,omitempty"` + + // ExtensionInstruction: Planner's instruction to the extension. + ExtensionInstruction string `json:"extensionInstruction,omitempty"` + + // ExtensionInvoked: Planner's choice of extension to invoke. + ExtensionInvoked string `json:"extensionInvoked,omitempty"` + + // Response: Response of the extension. + Response string `json:"response,omitempty"` + + // Success: When set to False, either the extension fails to execute or + // the response cannot be summarized. + Success bool `json:"success,omitempty"` + + // Thought: Planner's thought. + Thought string `json:"thought,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Error") 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. "Error") 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 *GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryResponseQueryResponseMetadataReAgentSteps + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata: Metadata +// for response +type GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata struct { + // Checkpoint: Optional. Checkpoint to restore a request + Checkpoint *GoogleCloudAiplatformV1beta1CheckPoint `json:"checkpoint,omitempty"` + + // ExecutionPlan: Optional. Execution plan for the request. + ExecutionPlan *GoogleCloudAiplatformV1beta1ExecutionPlan `json:"executionPlan,omitempty"` + + // FlowOutputs: To surface the v2 flow output. + FlowOutputs googleapi.RawMessage `json:"flowOutputs,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Checkpoint") 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. "Checkpoint") 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 *GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1QueryResponseResponseMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAiplatformV1beta1RawPredictRequest: Request message for // PredictionService.RawPredict. type GoogleCloudAiplatformV1beta1RawPredictRequest struct { @@ -25474,6 +25878,11 @@ func (s *GoogleCloudAiplatformV1beta1RebootPersistentResourceOperationMetadata) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest: Request +// message for PersistentResourceService.RebootPersistentResource. +type GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest struct { +} + // GoogleCloudAiplatformV1beta1RemoveContextChildrenRequest: Request // message for MetadataService.DeleteContextChildrenRequest. type GoogleCloudAiplatformV1beta1RemoveContextChildrenRequest struct { @@ -26621,6 +27030,9 @@ func (s *GoogleCloudAiplatformV1beta1Scheduling) MarshalJSON() ([]byte, error) { // 3.0 schema object (https://spec.openapis.org/oas/v3.0.3#schema). More // fields may be added in the future as needed. type GoogleCloudAiplatformV1beta1Schema struct { + // Default: Optional. Default value of the data. + Default interface{} `json:"default,omitempty"` + // Description: Optional. The description of the data. Description string `json:"description,omitempty"` @@ -26634,21 +27046,59 @@ type GoogleCloudAiplatformV1beta1Schema struct { Example interface{} `json:"example,omitempty"` // Format: Optional. The format of the data. Supported formats: for - // NUMBER type: float, double for INTEGER type: int32, int64 + // NUMBER type: "float", "double" for INTEGER type: "int32", "int64" for + // STRING type: "email", "byte", etc Format string `json:"format,omitempty"` - // Items: Optional. Schema of the elements of Type.ARRAY. + // Items: Optional. SCHEMA FIELDS FOR TYPE ARRAY Schema of the elements + // of Type.ARRAY. Items *GoogleCloudAiplatformV1beta1Schema `json:"items,omitempty"` + // MaxItems: Optional. Maximum number of the elements for Type.ARRAY. + MaxItems int64 `json:"maxItems,omitempty,string"` + + // MaxLength: Optional. Maximum length of the Type.STRING + MaxLength int64 `json:"maxLength,omitempty,string"` + + // MaxProperties: Optional. Maximum number of the properties for + // Type.OBJECT. + MaxProperties int64 `json:"maxProperties,omitempty,string"` + + // Maximum: Optional. Maximum value of the Type.INTEGER and Type.NUMBER + Maximum float64 `json:"maximum,omitempty"` + + // MinItems: Optional. Minimum number of the elements for Type.ARRAY. + MinItems int64 `json:"minItems,omitempty,string"` + + // MinLength: Optional. SCHEMA FIELDS FOR TYPE STRING Minimum length of + // the Type.STRING + MinLength int64 `json:"minLength,omitempty,string"` + + // MinProperties: Optional. Minimum number of the properties for + // Type.OBJECT. + MinProperties int64 `json:"minProperties,omitempty,string"` + + // Minimum: Optional. SCHEMA FIELDS FOR TYPE INTEGER and NUMBER Minimum + // value of the Type.INTEGER and Type.NUMBER + Minimum float64 `json:"minimum,omitempty"` + // Nullable: Optional. Indicates if the value may be null. Nullable bool `json:"nullable,omitempty"` - // Properties: Optional. Properties of Type.OBJECT. + // Pattern: Optional. Pattern of the Type.STRING to restrict a string to + // a regular expression. + Pattern string `json:"pattern,omitempty"` + + // Properties: Optional. SCHEMA FIELDS FOR TYPE OBJECT Properties of + // Type.OBJECT. Properties map[string]GoogleCloudAiplatformV1beta1Schema `json:"properties,omitempty"` // Required: Optional. Required properties of Type.OBJECT. Required []string `json:"required,omitempty"` + // Title: Optional. The title of the Schema. + Title string `json:"title,omitempty"` + // Type: Optional. The type of the data. // // Possible values: @@ -26661,7 +27111,7 @@ type GoogleCloudAiplatformV1beta1Schema struct { // "OBJECT" - OpenAPI object type Type string `json:"type,omitempty"` - // ForceSendFields is a list of field names (e.g. "Description") to + // ForceSendFields is a list of field names (e.g. "Default") 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 @@ -26669,10 +27119,10 @@ type GoogleCloudAiplatformV1beta1Schema struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Description") 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 + // NullFields is a list of field names (e.g. "Default") 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:"-"` @@ -26684,6 +27134,22 @@ func (s *GoogleCloudAiplatformV1beta1Schema) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *GoogleCloudAiplatformV1beta1Schema) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudAiplatformV1beta1Schema + var s1 struct { + Maximum gensupport.JSONFloat64 `json:"maximum"` + Minimum gensupport.JSONFloat64 `json:"minimum"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Maximum = float64(s1.Maximum) + s.Minimum = float64(s1.Minimum) + return nil +} + // GoogleCloudAiplatformV1beta1SchemaAnnotationSpecColor: An entry of // mapping between color and AnnotationSpec. The mapping is used in // segmentation mask. @@ -34968,6 +35434,91 @@ func (s *GoogleCloudAiplatformV1beta1StratifiedSplit) UnmarshalJSON(data []byte) return nil } +// GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest: +// Request message for +// FeatureOnlineStoreService.StreamingFetchFeatureValues. For the +// entities requested, all features under the requested feature view +// will be returned. +type GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest struct { + // DataFormat: Specify response data format. If not set, KeyValue format + // will be used. + // + // Possible values: + // "FEATURE_VIEW_DATA_FORMAT_UNSPECIFIED" - Not set. Will be treated + // as the KeyValue format. + // "KEY_VALUE" - Return response data in key-value format. + // "PROTO_STRUCT" - Return response data in proto Struct format. + DataFormat string `json:"dataFormat,omitempty"` + + DataKeys []*GoogleCloudAiplatformV1beta1FeatureViewDataKey `json:"dataKeys,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataFormat") 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. "DataFormat") 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 *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse: +// Response message for +// FeatureOnlineStoreService.StreamingFetchFeatureValues. +type GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse struct { + Data []*GoogleCloudAiplatformV1beta1FetchFeatureValuesResponse `json:"data,omitempty"` + + DataKeysWithError []*GoogleCloudAiplatformV1beta1FeatureViewDataKey `json:"dataKeysWithError,omitempty"` + + // Status: Response status. If OK, then + // StreamingFetchFeatureValuesResponse.data will be populated. Otherwise + // StreamingFetchFeatureValuesResponse.data_keys_with_error will be + // populated with the appropriate data keys. The error only applies to + // the listed data keys - the stream will remain open for further + // FeatureOnlineStoreService.StreamingFetchFeatureValuesRequest + // requests. + Status *GoogleRpcStatus `json:"status,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Data") 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. "Data") 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 *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAiplatformV1beta1StreamingPredictRequest: Request message // for PredictionService.StreamingPredict. The first message must // contain endpoint field and optionally input. The subsequent messages @@ -38579,7 +39130,9 @@ func (s *GoogleCloudAiplatformV1beta1Value) UnmarshalJSON(data []byte) error { // https://cloud.google.com/vertex-ai-search-and-conversation type GoogleCloudAiplatformV1beta1VertexAISearch struct { // Datastore: Required. Fully-qualified Vertex AI Search's datastore - // resource ID. projects/<>/locations/<>/collections/<>/dataStores/<> + // resource ID. Format: + // projects/{project}/locations/{location}/collections/{collection}/dataS + // tores/{dataStore} Datastore string `json:"datastore,omitempty"` // ForceSendFields is a list of field names (e.g. "Datastore") to @@ -40183,6 +40736,8 @@ type LanguageLabsAidaTrustRecitationProtoDocAttribution struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset. // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -40770,6 +41325,8 @@ type LanguageLabsAidaTrustRecitationProtoSegmentResult struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset. // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -41352,6 +41909,8 @@ type LearningGenaiRecitationDocAttribution struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -41939,6 +42498,8 @@ type LearningGenaiRecitationSegmentResult struct { // "DUET_GOOGLESQL_GENERATION" // "DUET_CLOUD_IX_PROMPTS" // "DUET_RAD" + // "DUET_STACKOVERFLOW_ISSUES" + // "DUET_STACKOVERFLOW_ANSWERS" // "BARD_ARCADE_GITHUB" - Bard ARCADE finetune dataset // "MOBILE_ASSISTANT_MAGI_FILTERED_0825_373K" - Mobile assistant // finetune datasets. @@ -42818,7 +43379,7 @@ func (s *LearningGenaiRootGroundingMetadata) MarshalJSON() ([]byte, error) { type LearningGenaiRootGroundingMetadataCitation struct { // EndIndex: Index in the prediction output where the citation ends - // (exclusive). Must be > start_index and < len(output). + // (exclusive). Must be > start_index and <= len(output). EndIndex int64 `json:"endIndex,omitempty"` // FactIndex: Index of the fact supporting this claim. Should be within @@ -44159,6 +44720,8 @@ type LearningServingLlmMessageMetadata struct { // "MAX_TOKENS" - Model has emitted the maximum number of tokens as // specified by max_decoding_steps. // "FILTER" - Finished due to triggering some post-processing filter. + // "TOP_N_FILTERED" - Filtered out due to Top_N < + // Response_Candidates.Size() FinishReason string `json:"finishReason,omitempty"` GroundingMetadata *LearningGenaiRootGroundingMetadata `json:"groundingMetadata,omitempty"` @@ -60194,13 +60757,13 @@ func (r *ProjectsLocationsEndpointsService) List(parent string) *ProjectsLocatio // Filter sets the optional parameter "filter": An expression for // filtering the results of the request. For field names both snake_case -// and camelCase are supported. * `endpoint` supports = and !=. +// and camelCase are supported. * `endpoint` supports `=` and `!=`. // `endpoint` represents the Endpoint ID, i.e. the last segment of the -// Endpoint's resource name. * `display_name` supports = and, != * +// Endpoint's resource name. * `display_name` supports `=` and `!=`. * // `labels` supports general map functions that is: * `labels.key=value` -// - key:value equality * `labels.key:* or labels:key - key existence * -// A key including a space must be quoted. `labels."a key". * -// `base_model_name` only supports = Some examples: * `endpoint=1` * +// - key:value equality * `labels.key:*` or `labels:key` - key existence +// * A key including a space must be quoted. `labels."a key". * +// `base_model_name` only supports `=`. Some examples: * `endpoint=1` * // `displayName="myDisplayName" * `labels.myKey="myValue" * // `baseModelName="text-bison" func (c *ProjectsLocationsEndpointsListCall) Filter(filter string) *ProjectsLocationsEndpointsListCall { @@ -60341,7 +60904,7 @@ func (c *ProjectsLocationsEndpointsListCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "filter": { - // "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports = and !=. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports = and, != * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:* or labels:key - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports = Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", + // "description": "Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported. * `endpoint` supports `=` and `!=`. `endpoint` represents the Endpoint ID, i.e. the last segment of the Endpoint's resource name. * `display_name` supports `=` and `!=`. * `labels` supports general map functions that is: * `labels.key=value` - key:value equality * `labels.key:*` or `labels:key` - key existence * A key including a space must be quoted. `labels.\"a key\"`. * `base_model_name` only supports `=`. Some examples: * `endpoint=1` * `displayName=\"myDisplayName\"` * `labels.myKey=\"myValue\"` * `baseModelName=\"text-bison\"`", // "location": "query", // "type": "string" // }, @@ -65564,7 +66127,7 @@ func (r *ProjectsLocationsExtensionsService) Patch(name string, googlecloudaipla // UpdateMask sets the optional parameter "updateMask": Required. Mask // specifying which fields to update. Supported fields: * `display_name` -// * `description` +// * `description` * `tool_use_examples` func (c *ProjectsLocationsExtensionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsExtensionsPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -65678,7 +66241,7 @@ func (c *ProjectsLocationsExtensionsPatchCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "updateMask": { - // "description": "Required. Mask specifying which fields to update. Supported fields: * `display_name` * `description`", + // "description": "Required. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `tool_use_examples`", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -65698,6 +66261,151 @@ func (c *ProjectsLocationsExtensionsPatchCall) Do(opts ...googleapi.CallOption) } +// method id "aiplatform.projects.locations.extensions.query": + +type ProjectsLocationsExtensionsQueryCall struct { + s *Service + nameid string + googlecloudaiplatformv1beta1queryextensionrequest *GoogleCloudAiplatformV1beta1QueryExtensionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Query: Queries an extension with a default controller. +// +// - name: Name (identifier) of the extension; Format: +// `projects/{project}/locations/{location}/extensions/{extension}`. +func (r *ProjectsLocationsExtensionsService) Query(nameid string, googlecloudaiplatformv1beta1queryextensionrequest *GoogleCloudAiplatformV1beta1QueryExtensionRequest) *ProjectsLocationsExtensionsQueryCall { + c := &ProjectsLocationsExtensionsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.nameid = nameid + c.googlecloudaiplatformv1beta1queryextensionrequest = googlecloudaiplatformv1beta1queryextensionrequest + 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 *ProjectsLocationsExtensionsQueryCall) Fields(s ...googleapi.Field) *ProjectsLocationsExtensionsQueryCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsExtensionsQueryCall) Context(ctx context.Context) *ProjectsLocationsExtensionsQueryCall { + 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 *ProjectsLocationsExtensionsQueryCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsExtensionsQueryCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1beta1queryextensionrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:query") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.nameid, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "aiplatform.projects.locations.extensions.query" call. +// Exactly one of *GoogleCloudAiplatformV1beta1QueryExtensionResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudAiplatformV1beta1QueryExtensionResponse.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 *ProjectsLocationsExtensionsQueryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1beta1QueryExtensionResponse, 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 := &GoogleCloudAiplatformV1beta1QueryExtensionResponse{ + 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": "Queries an extension with a default controller.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/extensions/{extensionsId}:query", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.extensions.query", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name (identifier) of the extension; Format: `projects/{project}/locations/{location}/extensions/{extension}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/extensions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}:query", + // "request": { + // "$ref": "GoogleCloudAiplatformV1beta1QueryExtensionRequest" + // }, + // "response": { + // "$ref": "GoogleCloudAiplatformV1beta1QueryExtensionResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "aiplatform.projects.locations.extensions.deployments.operations.cancel": type ProjectsLocationsExtensionsDeploymentsOperationsCancelCall struct { @@ -73104,6 +73812,156 @@ func (c *ProjectsLocationsFeatureOnlineStoresFeatureViewsSetIamPolicyCall) Do(op } +// method id "aiplatform.projects.locations.featureOnlineStores.featureViews.streamingFetchFeatureValues": + +type ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall struct { + s *Service + featureView string + googlecloudaiplatformv1beta1streamingfetchfeaturevaluesrequest *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// StreamingFetchFeatureValues: Bidirectional streaming RPC to fetch +// feature values under a FeatureView. Requests may not have a +// one-to-one mapping to responses and responses may be returned +// out-of-order to reduce latency. +// +// - featureView: FeatureView resource format +// `projects/{project}/locations/{location}/featureOnlineStores/{featur +// eOnlineStore}/featureViews/{featureView}`. +func (r *ProjectsLocationsFeatureOnlineStoresFeatureViewsService) StreamingFetchFeatureValues(featureView string, googlecloudaiplatformv1beta1streamingfetchfeaturevaluesrequest *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest) *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall { + c := &ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.featureView = featureView + c.googlecloudaiplatformv1beta1streamingfetchfeaturevaluesrequest = googlecloudaiplatformv1beta1streamingfetchfeaturevaluesrequest + 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 *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall) Fields(s ...googleapi.Field) *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall) Context(ctx context.Context) *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall { + 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 *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1beta1streamingfetchfeaturevaluesrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+featureView}:streamingFetchFeatureValues") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "featureView": c.featureView, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "aiplatform.projects.locations.featureOnlineStores.featureViews.streamingFetchFeatureValues" call. +// Exactly one of +// *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse.Serve +// rResponse.Header 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 *ProjectsLocationsFeatureOnlineStoresFeatureViewsStreamingFetchFeatureValuesCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse, 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 := &GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse{ + 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": "Bidirectional streaming RPC to fetch feature values under a FeatureView. Requests may not have a one-to-one mapping to responses and responses may be returned out-of-order to reduce latency.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/featureOnlineStores/{featureOnlineStoresId}/featureViews/{featureViewsId}:streamingFetchFeatureValues", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.featureOnlineStores.featureViews.streamingFetchFeatureValues", + // "parameterOrder": [ + // "featureView" + // ], + // "parameters": { + // "featureView": { + // "description": "Required. FeatureView resource format `projects/{project}/locations/{location}/featureOnlineStores/{featureOnlineStore}/featureViews/{featureView}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/featureOnlineStores/[^/]+/featureViews/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+featureView}:streamingFetchFeatureValues", + // "request": { + // "$ref": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesRequest" + // }, + // "response": { + // "$ref": "GoogleCloudAiplatformV1beta1StreamingFetchFeatureValuesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "aiplatform.projects.locations.featureOnlineStores.featureViews.sync": type ProjectsLocationsFeatureOnlineStoresFeatureViewsSyncCall struct { @@ -111148,6 +112006,150 @@ func (c *ProjectsLocationsPersistentResourcesPatchCall) Do(opts ...googleapi.Cal } +// method id "aiplatform.projects.locations.persistentResources.reboot": + +type ProjectsLocationsPersistentResourcesRebootCall struct { + s *Service + name string + googlecloudaiplatformv1beta1rebootpersistentresourcerequest *GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Reboot: Reboots a PersistentResource. +// +// - name: The name of the PersistentResource resource. Format: +// `projects/{project_id_or_number}/locations/{location_id}/persistentR +// esources/{persistent_resource_id}`. +func (r *ProjectsLocationsPersistentResourcesService) Reboot(name string, googlecloudaiplatformv1beta1rebootpersistentresourcerequest *GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest) *ProjectsLocationsPersistentResourcesRebootCall { + c := &ProjectsLocationsPersistentResourcesRebootCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudaiplatformv1beta1rebootpersistentresourcerequest = googlecloudaiplatformv1beta1rebootpersistentresourcerequest + 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 *ProjectsLocationsPersistentResourcesRebootCall) Fields(s ...googleapi.Field) *ProjectsLocationsPersistentResourcesRebootCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsPersistentResourcesRebootCall) Context(ctx context.Context) *ProjectsLocationsPersistentResourcesRebootCall { + 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 *ProjectsLocationsPersistentResourcesRebootCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsPersistentResourcesRebootCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudaiplatformv1beta1rebootpersistentresourcerequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:reboot") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", 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 "aiplatform.projects.locations.persistentResources.reboot" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header 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 *ProjectsLocationsPersistentResourcesRebootCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Reboots a PersistentResource.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", + // "httpMethod": "POST", + // "id": "aiplatform.projects.locations.persistentResources.reboot", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}:reboot", + // "request": { + // "$ref": "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "aiplatform.projects.locations.persistentResources.operations.cancel": type ProjectsLocationsPersistentResourcesOperationsCancelCall struct { diff --git a/artifactregistry/v1/artifactregistry-api.json b/artifactregistry/v1/artifactregistry-api.json index 6d2759b7459..e04b0562cba 100644 --- a/artifactregistry/v1/artifactregistry-api.json +++ b/artifactregistry/v1/artifactregistry-api.json @@ -1734,7 +1734,7 @@ } } }, - "revision": "20240305", + "revision": "20240322", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { @@ -3229,13 +3229,15 @@ "MODE_UNSPECIFIED", "STANDARD_REPOSITORY", "VIRTUAL_REPOSITORY", - "REMOTE_REPOSITORY" + "REMOTE_REPOSITORY", + "AOSS_REPOSITORY" ], "enumDescriptions": [ "Unspecified mode.", "A standard repository storing artifacts.", "A virtual repository to serve artifacts from one or more sources.", - "A remote repository to serve artifacts from a remote source." + "A remote repository to serve artifacts from a remote source.", + "An AOSS repository provides artifacts from AOSS upstreams." ], "type": "string" }, diff --git a/artifactregistry/v1/artifactregistry-gen.go b/artifactregistry/v1/artifactregistry-gen.go index e038e5641f1..add4244aeed 100644 --- a/artifactregistry/v1/artifactregistry-gen.go +++ b/artifactregistry/v1/artifactregistry-gen.go @@ -2993,6 +2993,8 @@ type Repository struct { // one or more sources. // "REMOTE_REPOSITORY" - A remote repository to serve artifacts from a // remote source. + // "AOSS_REPOSITORY" - An AOSS repository provides artifacts from AOSS + // upstreams. Mode string `json:"mode,omitempty"` // Name: The name of the repository, for example: diff --git a/bigtableadmin/v2/bigtableadmin-api.json b/bigtableadmin/v2/bigtableadmin-api.json index 9224ad1d67d..dcaa368fbe0 100644 --- a/bigtableadmin/v2/bigtableadmin-api.json +++ b/bigtableadmin/v2/bigtableadmin-api.json @@ -2098,13 +2098,17 @@ } } }, - "revision": "20240306", + "revision": "20240318", "rootUrl": "https://bigtableadmin.googleapis.com/", "schemas": { "AppProfile": { "description": "A configuration object describing how Cloud Bigtable should treat traffic from a particular end user application.", "id": "AppProfile", "properties": { + "dataBoostIsolationReadOnly": { + "$ref": "DataBoostIsolationReadOnly", + "description": "Specifies that this app profile is intended for read-only usage via the Data Boost feature." + }, "description": { "description": "Long form description of the use case for this AppProfile.", "type": "string" @@ -2409,6 +2413,14 @@ "consistencyToken": { "description": "Required. The token created using GenerateConsistencyToken for the Table.", "type": "string" + }, + "dataBoostReadLocalWrites": { + "$ref": "DataBoostReadLocalWrites", + "description": "Checks that reads using an app profile with `DataBoostIsolationReadOnly` can see all writes committed before the token was created, but only if the read and write target the same cluster." + }, + "standardReadRemoteWrites": { + "$ref": "StandardReadRemoteWrites", + "description": "Checks that reads using an app profile with `StandardIsolation` can see all writes committed before the token was created, even if the read and write target different clusters." } }, "type": "object" @@ -2559,6 +2571,10 @@ "$ref": "ColumnFamilyStats", "description": "Output only. Only available with STATS_VIEW, this includes summary statistics about column family contents. For statistics over an entire table, see TableStats above.", "readOnly": true + }, + "valueType": { + "$ref": "Type", + "description": "The type of data stored in each of this family's cell values, including its full encoding. If omitted, the family only serves raw untyped bytes. For now, only the `Aggregate` type is supported. `Aggregate` can only be set at family creation and is immutable afterwards. If `value_type` is `Aggregate`, written data must be compatible with: * `value_type.input_type` for `AddInput` mutations" } }, "type": "object" @@ -2805,6 +2821,31 @@ }, "type": "object" }, + "DataBoostIsolationReadOnly": { + "description": "Data Boost is a serverless compute capability that lets you run high-throughput read jobs on your Bigtable data, without impacting the performance of the clusters that handle your application traffic. Currently, Data Boost exclusively supports read-only use-cases with single-cluster routing. Data Boost reads are only guaranteed to see the results of writes that were written at least 30 minutes ago. This means newly written values may not become visible for up to 30m, and also means that old values may remain visible for up to 30m after being deleted or overwritten. To mitigate the staleness of the data, users may either wait 30m, or use CheckConsistency.", + "id": "DataBoostIsolationReadOnly", + "properties": { + "computeBillingOwner": { + "description": "The Compute Billing Owner for this Data Boost App Profile.", + "enum": [ + "COMPUTE_BILLING_OWNER_UNSPECIFIED", + "HOST_PAYS" + ], + "enumDescriptions": [ + "Unspecified value.", + "The host Cloud Project containing the targeted Bigtable Instance / Table pays for compute." + ], + "type": "string" + } + }, + "type": "object" + }, + "DataBoostReadLocalWrites": { + "description": "Checks that all writes before the consistency token was generated in the same cluster are readable by Databoost.", + "id": "DataBoostReadLocalWrites", + "properties": {}, + "type": "object" + }, "DropRowRangeRequest": { "description": "Request message for google.bigtable.admin.v2.BigtableTableAdmin.DropRowRange", "id": "DropRowRangeRequest", @@ -3003,6 +3044,93 @@ }, "type": "object" }, + "GoogleBigtableAdminV2TypeAggregate": { + "description": "A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes will provide either the `input_type` or `state_type`, and reads will always return the `state_type` .", + "id": "GoogleBigtableAdminV2TypeAggregate", + "properties": { + "inputType": { + "$ref": "Type", + "description": "Type of the inputs that are accumulated by this `Aggregate`, which must specify a full encoding. Use `AddInput` mutations to accumulate new inputs." + }, + "stateType": { + "$ref": "Type", + "description": "Output only. Type that holds the internal accumulator state for the `Aggregate`. This is a function of the `input_type` and `aggregator` chosen, and will always specify a full encoding.", + "readOnly": true + }, + "sum": { + "$ref": "GoogleBigtableAdminV2TypeAggregateSum", + "description": "Sum aggregator." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeAggregateSum": { + "description": "Computes the sum of the input values. Allowed input: `Int64` State: same as input", + "id": "GoogleBigtableAdminV2TypeAggregateSum", + "properties": {}, + "type": "object" + }, + "GoogleBigtableAdminV2TypeBytes": { + "description": "Bytes Values of type `Bytes` are stored in `Value.bytes_value`.", + "id": "GoogleBigtableAdminV2TypeBytes", + "properties": { + "encoding": { + "$ref": "GoogleBigtableAdminV2TypeBytesEncoding", + "description": "The encoding to use when converting to/from lower level types." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeBytesEncoding": { + "description": "Rules used to convert to/from lower level types.", + "id": "GoogleBigtableAdminV2TypeBytesEncoding", + "properties": { + "raw": { + "$ref": "GoogleBigtableAdminV2TypeBytesEncodingRaw", + "description": "Use `Raw` encoding." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeBytesEncodingRaw": { + "description": "Leaves the value \"as-is\" * Natural sort? Yes * Self-delimiting? No * Compatibility? N/A", + "id": "GoogleBigtableAdminV2TypeBytesEncodingRaw", + "properties": {}, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt64": { + "description": "Int64 Values of type `Int64` are stored in `Value.int_value`.", + "id": "GoogleBigtableAdminV2TypeInt64", + "properties": { + "encoding": { + "$ref": "GoogleBigtableAdminV2TypeInt64Encoding", + "description": "The encoding to use when converting to/from lower level types." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt64Encoding": { + "description": "Rules used to convert to/from lower level types.", + "id": "GoogleBigtableAdminV2TypeInt64Encoding", + "properties": { + "bigEndianBytes": { + "$ref": "GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes", + "description": "Use `BigEndianBytes` encoding." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes": { + "description": "Encodes the value as an 8-byte big endian twos complement `Bytes` value. * Natural sort? No (positive values only) * Self-delimiting? Yes * Compatibility? - BigQuery Federation `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN`", + "id": "GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes", + "properties": { + "bytesType": { + "$ref": "GoogleBigtableAdminV2TypeBytes", + "description": "The underlying `Bytes` type, which may be able to encode further." + } + }, + "type": "object" + }, "HotTablet": { "description": "A tablet is a defined by a start and end key and is explained in https://cloud.google.com/bigtable/docs/overview#architecture and https://cloud.google.com/bigtable/docs/performance#optimization. A Hot tablet is a tablet that exhibits high average cpu usage during the time interval from start time to end time.", "id": "HotTablet", @@ -3691,6 +3819,12 @@ }, "type": "object" }, + "StandardReadRemoteWrites": { + "description": "Checks that all writes before the consistency token was generated are replicated in every cluster and readable.", + "id": "StandardReadRemoteWrites", + "properties": {}, + "type": "object" + }, "Status": { "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", "id": "Status", @@ -3867,6 +4001,25 @@ }, "type": "object" }, + "Type": { + "description": "`Type` represents the type of data that is written to, read from, or stored in Bigtable. It is heavily based on the GoogleSQL standard to help maintain familiarity and consistency across products and features. For compatibility with Bigtable's existing untyped APIs, each `Type` includes an `Encoding` which describes how to convert to/from the underlying data. This might involve composing a series of steps into an \"encoding chain,\" for example to convert from INT64 -\u003e STRING -\u003e raw bytes. In most cases, a \"link\" in the encoding chain will be based an on existing GoogleSQL conversion function like `CAST`. Each link in the encoding chain also defines the following properties: * Natural sort: Does the encoded value sort consistently with the original typed value? Note that Bigtable will always sort data based on the raw encoded value, *not* the decoded type. - Example: STRING values sort in the same order as their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width STRING does *not* preserve sort order when dealing with negative numbers. INT64(1) \u003e INT64(-1), but STRING(\"-00001\") \u003e STRING(\"00001). - The overall encoding chain sorts naturally if *every* link does. * Self-delimiting: If we concatenate two encoded values, can we always tell where the first one ends and the second one begins? - Example: If we encode INT64s to fixed-width STRINGs, the first value will always contain exactly N digits, possibly preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded STRINGs, we have no way to tell where the first one ends. - The overall encoding chain is self-delimiting if *any* link is. * Compatibility: Which other systems have matching encoding schemes? For example, does this encoding have a GoogleSQL equivalent? HBase? Java?", + "id": "Type", + "properties": { + "aggregateType": { + "$ref": "GoogleBigtableAdminV2TypeAggregate", + "description": "Aggregate" + }, + "bytesType": { + "$ref": "GoogleBigtableAdminV2TypeBytes", + "description": "Bytes" + }, + "int64Type": { + "$ref": "GoogleBigtableAdminV2TypeInt64", + "description": "Int64" + } + }, + "type": "object" + }, "UndeleteTableMetadata": { "description": "Metadata type for the operation returned by google.bigtable.admin.v2.BigtableTableAdmin.UndeleteTable.", "id": "UndeleteTableMetadata", diff --git a/bigtableadmin/v2/bigtableadmin-gen.go b/bigtableadmin/v2/bigtableadmin-gen.go index f37c66a7c78..8e4fcd5f65c 100644 --- a/bigtableadmin/v2/bigtableadmin-gen.go +++ b/bigtableadmin/v2/bigtableadmin-gen.go @@ -337,6 +337,10 @@ type ProjectsLocationsService struct { // AppProfile: A configuration object describing how Cloud Bigtable // should treat traffic from a particular end user application. type AppProfile struct { + // DataBoostIsolationReadOnly: Specifies that this app profile is + // intended for read-only usage via the Data Boost feature. + DataBoostIsolationReadOnly *DataBoostIsolationReadOnly `json:"dataBoostIsolationReadOnly,omitempty"` + // Description: Long form description of the use case for this // AppProfile. Description string `json:"description,omitempty"` @@ -381,20 +385,22 @@ type AppProfile struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Description") 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 is a list of field names (e.g. + // "DataBoostIsolationReadOnly") 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. "Description") 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 is a list of field names (e.g. + // "DataBoostIsolationReadOnly") 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:"-"` } @@ -941,6 +947,17 @@ type CheckConsistencyRequest struct { // GenerateConsistencyToken for the Table. ConsistencyToken string `json:"consistencyToken,omitempty"` + // DataBoostReadLocalWrites: Checks that reads using an app profile with + // `DataBoostIsolationReadOnly` can see all writes committed before the + // token was created, but only if the read and write target the same + // cluster. + DataBoostReadLocalWrites *DataBoostReadLocalWrites `json:"dataBoostReadLocalWrites,omitempty"` + + // StandardReadRemoteWrites: Checks that reads using an app profile with + // `StandardIsolation` can see all writes committed before the token was + // created, even if the read and write target different clusters. + StandardReadRemoteWrites *StandardReadRemoteWrites `json:"standardReadRemoteWrites,omitempty"` + // ForceSendFields is a list of field names (e.g. "ConsistencyToken") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -1219,6 +1236,15 @@ type ColumnFamily struct { // an entire table, see TableStats above. Stats *ColumnFamilyStats `json:"stats,omitempty"` + // ValueType: The type of data stored in each of this family's cell + // values, including its full encoding. If omitted, the family only + // serves raw untyped bytes. For now, only the `Aggregate` type is + // supported. `Aggregate` can only be set at family creation and is + // immutable afterwards. If `value_type` is `Aggregate`, written data + // must be compatible with: * `value_type.input_type` for `AddInput` + // mutations + ValueType *Type `json:"valueType,omitempty"` + // ForceSendFields is a list of field names (e.g. "GcRule") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -1733,6 +1759,57 @@ func (s *CreateTableRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DataBoostIsolationReadOnly: Data Boost is a serverless compute +// capability that lets you run high-throughput read jobs on your +// Bigtable data, without impacting the performance of the clusters that +// handle your application traffic. Currently, Data Boost exclusively +// supports read-only use-cases with single-cluster routing. Data Boost +// reads are only guaranteed to see the results of writes that were +// written at least 30 minutes ago. This means newly written values may +// not become visible for up to 30m, and also means that old values may +// remain visible for up to 30m after being deleted or overwritten. To +// mitigate the staleness of the data, users may either wait 30m, or use +// CheckConsistency. +type DataBoostIsolationReadOnly struct { + // ComputeBillingOwner: The Compute Billing Owner for this Data Boost + // App Profile. + // + // Possible values: + // "COMPUTE_BILLING_OWNER_UNSPECIFIED" - Unspecified value. + // "HOST_PAYS" - The host Cloud Project containing the targeted + // Bigtable Instance / Table pays for compute. + ComputeBillingOwner string `json:"computeBillingOwner,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ComputeBillingOwner") + // 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. "ComputeBillingOwner") 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 *DataBoostIsolationReadOnly) MarshalJSON() ([]byte, error) { + type NoMethod DataBoostIsolationReadOnly + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DataBoostReadLocalWrites: Checks that all writes before the +// consistency token was generated in the same cluster are readable by +// Databoost. +type DataBoostReadLocalWrites struct { +} + // DropRowRangeRequest: Request message for // google.bigtable.admin.v2.BigtableTableAdmin.DropRowRange type DropRowRangeRequest struct { @@ -2157,6 +2234,211 @@ func (s *GoogleBigtableAdminV2AuthorizedViewSubsetView) MarshalJSON() ([]byte, e return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleBigtableAdminV2TypeAggregate: A value that combines incremental +// updates into a summarized value. Data is never directly written or +// read using type `Aggregate`. Writes will provide either the +// `input_type` or `state_type`, and reads will always return the +// `state_type` . +type GoogleBigtableAdminV2TypeAggregate struct { + // InputType: Type of the inputs that are accumulated by this + // `Aggregate`, which must specify a full encoding. Use `AddInput` + // mutations to accumulate new inputs. + InputType *Type `json:"inputType,omitempty"` + + // StateType: Output only. Type that holds the internal accumulator + // state for the `Aggregate`. This is a function of the `input_type` and + // `aggregator` chosen, and will always specify a full encoding. + StateType *Type `json:"stateType,omitempty"` + + // Sum: Sum aggregator. + Sum *GoogleBigtableAdminV2TypeAggregateSum `json:"sum,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InputType") 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. "InputType") 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 *GoogleBigtableAdminV2TypeAggregate) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeAggregate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleBigtableAdminV2TypeAggregateSum: Computes the sum of the input +// values. Allowed input: `Int64` State: same as input +type GoogleBigtableAdminV2TypeAggregateSum struct { +} + +// GoogleBigtableAdminV2TypeBytes: Bytes Values of type `Bytes` are +// stored in `Value.bytes_value`. +type GoogleBigtableAdminV2TypeBytes struct { + // Encoding: The encoding to use when converting to/from lower level + // types. + Encoding *GoogleBigtableAdminV2TypeBytesEncoding `json:"encoding,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Encoding") 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. "Encoding") 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 *GoogleBigtableAdminV2TypeBytes) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeBytes + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleBigtableAdminV2TypeBytesEncoding: Rules used to convert to/from +// lower level types. +type GoogleBigtableAdminV2TypeBytesEncoding struct { + // Raw: Use `Raw` encoding. + Raw *GoogleBigtableAdminV2TypeBytesEncodingRaw `json:"raw,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Raw") 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. "Raw") 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 *GoogleBigtableAdminV2TypeBytesEncoding) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeBytesEncoding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleBigtableAdminV2TypeBytesEncodingRaw: Leaves the value "as-is" * +// Natural sort? Yes * Self-delimiting? No * Compatibility? N/A +type GoogleBigtableAdminV2TypeBytesEncodingRaw struct { +} + +// GoogleBigtableAdminV2TypeInt64: Int64 Values of type `Int64` are +// stored in `Value.int_value`. +type GoogleBigtableAdminV2TypeInt64 struct { + // Encoding: The encoding to use when converting to/from lower level + // types. + Encoding *GoogleBigtableAdminV2TypeInt64Encoding `json:"encoding,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Encoding") 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. "Encoding") 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 *GoogleBigtableAdminV2TypeInt64) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeInt64 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleBigtableAdminV2TypeInt64Encoding: Rules used to convert to/from +// lower level types. +type GoogleBigtableAdminV2TypeInt64Encoding struct { + // BigEndianBytes: Use `BigEndianBytes` encoding. + BigEndianBytes *GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes `json:"bigEndianBytes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BigEndianBytes") 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. "BigEndianBytes") 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 *GoogleBigtableAdminV2TypeInt64Encoding) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeInt64Encoding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes: Encodes the +// value as an 8-byte big endian twos complement `Bytes` value. * +// Natural sort? No (positive values only) * Self-delimiting? Yes * +// Compatibility? - BigQuery Federation `BINARY` encoding - HBase +// `Bytes.toBytes` - Java `ByteBuffer.putLong()` with +// `ByteOrder.BIG_ENDIAN` +type GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes struct { + // BytesType: The underlying `Bytes` type, which may be able to encode + // further. + BytesType *GoogleBigtableAdminV2TypeBytes `json:"bytesType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BytesType") 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. "BytesType") 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 *GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes) MarshalJSON() ([]byte, error) { + type NoMethod GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // HotTablet: A tablet is a defined by a start and end key and is // explained in // https://cloud.google.com/bigtable/docs/overview#architecture and @@ -3479,6 +3761,12 @@ func (s *StandardIsolation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// StandardReadRemoteWrites: Checks that all writes before the +// consistency token was generated are replicated in every cluster and +// readable. +type StandardReadRemoteWrites struct { +} + // Status: The `Status` type defines a logical error model that is // suitable for different programming environments, including REST APIs // and RPC APIs. It is used by gRPC (https://github.com/grpc). Each @@ -3797,6 +4085,66 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Type: `Type` represents the type of data that is written to, read +// from, or stored in Bigtable. It is heavily based on the GoogleSQL +// standard to help maintain familiarity and consistency across products +// and features. For compatibility with Bigtable's existing untyped +// APIs, each `Type` includes an `Encoding` which describes how to +// convert to/from the underlying data. This might involve composing a +// series of steps into an "encoding chain," for example to convert from +// INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding +// chain will be based an on existing GoogleSQL conversion function like +// `CAST`. Each link in the encoding chain also defines the following +// properties: * Natural sort: Does the encoded value sort consistently +// with the original typed value? Note that Bigtable will always sort +// data based on the raw encoded value, *not* the decoded type. - +// Example: STRING values sort in the same order as their UTF-8 +// encodings. - Counterexample: Encoding INT64 to a fixed-width STRING +// does *not* preserve sort order when dealing with negative numbers. +// INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The +// overall encoding chain sorts naturally if *every* link does. * +// Self-delimiting: If we concatenate two encoded values, can we always +// tell where the first one ends and the second one begins? - Example: +// If we encode INT64s to fixed-width STRINGs, the first value will +// always contain exactly N digits, possibly preceded by a sign. - +// Counterexample: If we concatenate two UTF-8 encoded STRINGs, we have +// no way to tell where the first one ends. - The overall encoding chain +// is self-delimiting if *any* link is. * Compatibility: Which other +// systems have matching encoding schemes? For example, does this +// encoding have a GoogleSQL equivalent? HBase? Java? +type Type struct { + // AggregateType: Aggregate + AggregateType *GoogleBigtableAdminV2TypeAggregate `json:"aggregateType,omitempty"` + + // BytesType: Bytes + BytesType *GoogleBigtableAdminV2TypeBytes `json:"bytesType,omitempty"` + + // Int64Type: Int64 + Int64Type *GoogleBigtableAdminV2TypeInt64 `json:"int64Type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AggregateType") 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. "AggregateType") 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 *Type) MarshalJSON() ([]byte, error) { + type NoMethod Type + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UndeleteTableMetadata: Metadata type for the operation returned by // google.bigtable.admin.v2.BigtableTableAdmin.UndeleteTable. type UndeleteTableMetadata struct { diff --git a/chromemanagement/v1/chromemanagement-api.json b/chromemanagement/v1/chromemanagement-api.json index 141b3cef418..8334647d96e 100644 --- a/chromemanagement/v1/chromemanagement-api.json +++ b/chromemanagement/v1/chromemanagement-api.json @@ -902,7 +902,7 @@ ], "parameters": { "filter": { - "description": "Optional. Only include resources that match the filter. Supported filter fields: - org_unit_id - serial_number - device_id - reports_timestamp The \"reports_timestamp\" filter accepts either the Unix Epoch milliseconds format or the RFC3339 UTC \"Zulu\" format with nanosecond resolution and up to nine fractional digits. Both formats should be surrounded by simple double quotes. Examples: \"2014-10-02T15:01:23Z\", \"2014-10-02T15:01:23.045123456Z\", \"1679283943823\".", + "description": "Optional. Only include resources that match the filter. Requests that don't specify a \"reports_timestamp\" value will default to returning only recent reports. Specify \"reports_timestamp\u003e=0\" to get all report data. Supported filter fields: - org_unit_id - serial_number - device_id - reports_timestamp The \"reports_timestamp\" filter accepts either the Unix Epoch milliseconds format or the RFC3339 UTC \"Zulu\" format with nanosecond resolution and up to nine fractional digits. Both formats should be surrounded by simple double quotes. Examples: \"2014-10-02T15:01:23Z\", \"2014-10-02T15:01:23.045123456Z\", \"1679283943823\".", "location": "query", "type": "string" }, @@ -1172,7 +1172,7 @@ } } }, - "revision": "20240314", + "revision": "20240321", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { diff --git a/chromemanagement/v1/chromemanagement-gen.go b/chromemanagement/v1/chromemanagement-gen.go index 2a36b677ab6..c7849135ff8 100644 --- a/chromemanagement/v1/chromemanagement-gen.go +++ b/chromemanagement/v1/chromemanagement-gen.go @@ -8269,13 +8269,16 @@ func (r *CustomersTelemetryDevicesService) List(parent string) *CustomersTelemet } // Filter sets the optional parameter "filter": Only include resources -// that match the filter. Supported filter fields: - org_unit_id - -// serial_number - device_id - reports_timestamp The "reports_timestamp" -// filter accepts either the Unix Epoch milliseconds format or the -// RFC3339 UTC "Zulu" format with nanosecond resolution and up to nine -// fractional digits. Both formats should be surrounded by simple double -// quotes. Examples: "2014-10-02T15:01:23Z", -// "2014-10-02T15:01:23.045123456Z", "1679283943823". +// that match the filter. Requests that don't specify a +// "reports_timestamp" value will default to returning only recent +// reports. Specify "reports_timestamp>=0" to get all report data. +// Supported filter fields: - org_unit_id - serial_number - device_id - +// reports_timestamp The "reports_timestamp" filter accepts either the +// Unix Epoch milliseconds format or the RFC3339 UTC "Zulu" format with +// nanosecond resolution and up to nine fractional digits. Both formats +// should be surrounded by simple double quotes. Examples: +// "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", +// "1679283943823". func (c *CustomersTelemetryDevicesListCall) Filter(filter string) *CustomersTelemetryDevicesListCall { c.urlParams_.Set("filter", filter) return c @@ -8421,7 +8424,7 @@ func (c *CustomersTelemetryDevicesListCall) Do(opts ...googleapi.CallOption) (*G // ], // "parameters": { // "filter": { - // "description": "Optional. Only include resources that match the filter. Supported filter fields: - org_unit_id - serial_number - device_id - reports_timestamp The \"reports_timestamp\" filter accepts either the Unix Epoch milliseconds format or the RFC3339 UTC \"Zulu\" format with nanosecond resolution and up to nine fractional digits. Both formats should be surrounded by simple double quotes. Examples: \"2014-10-02T15:01:23Z\", \"2014-10-02T15:01:23.045123456Z\", \"1679283943823\".", + // "description": "Optional. Only include resources that match the filter. Requests that don't specify a \"reports_timestamp\" value will default to returning only recent reports. Specify \"reports_timestamp\u003e=0\" to get all report data. Supported filter fields: - org_unit_id - serial_number - device_id - reports_timestamp The \"reports_timestamp\" filter accepts either the Unix Epoch milliseconds format or the RFC3339 UTC \"Zulu\" format with nanosecond resolution and up to nine fractional digits. Both formats should be surrounded by simple double quotes. Examples: \"2014-10-02T15:01:23Z\", \"2014-10-02T15:01:23.045123456Z\", \"1679283943823\".", // "location": "query", // "type": "string" // }, diff --git a/composer/v1/composer-api.json b/composer/v1/composer-api.json index 8c1adebcbbc..a59dbed1f3c 100644 --- a/composer/v1/composer-api.json +++ b/composer/v1/composer-api.json @@ -938,7 +938,7 @@ } } }, - "revision": "20240310", + "revision": "20240317", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { @@ -1166,7 +1166,7 @@ "properties": { "airflowMetadataRetentionConfig": { "$ref": "AirflowMetadataRetentionPolicyConfig", - "description": "Optional. The retention policy for airflow metadata database. Details: go/composer-database-retention-2" + "description": "Optional. The retention policy for airflow metadata database." }, "taskLogsRetentionConfig": { "$ref": "TaskLogsRetentionConfig", diff --git a/composer/v1/composer-gen.go b/composer/v1/composer-gen.go index 4e0235c5880..3d8ad835efb 100644 --- a/composer/v1/composer-gen.go +++ b/composer/v1/composer-gen.go @@ -595,7 +595,7 @@ func (s *DagProcessorResource) UnmarshalJSON(data []byte) error { // data retention mechanism. type DataRetentionConfig struct { // AirflowMetadataRetentionConfig: Optional. The retention policy for - // airflow metadata database. Details: go/composer-database-retention-2 + // airflow metadata database. AirflowMetadataRetentionConfig *AirflowMetadataRetentionPolicyConfig `json:"airflowMetadataRetentionConfig,omitempty"` // TaskLogsRetentionConfig: Optional. The configuration settings for diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index 27893a97d26..c3bb925e4df 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -18438,6 +18438,100 @@ } } }, + "networkPlacements": { + "methods": { + "get": { + "description": "Returns the specified network placement.", + "flatPath": "projects/{project}/global/networkPlacements/{networkPlacement}", + "httpMethod": "GET", + "id": "compute.networkPlacements.get", + "parameterOrder": [ + "project", + "networkPlacement" + ], + "parameters": { + "networkPlacement": { + "description": "Name of the network placement to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/networkPlacements/{networkPlacement}", + "response": { + "$ref": "NetworkPlacement" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of network placements available to the specified project.", + "flatPath": "projects/{project}/global/networkPlacements", + "httpMethod": "GET", + "id": "compute.networkPlacements.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\u003e`, `\u003c`, `\u003c=`, `\u003e=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/networkPlacements", + "response": { + "$ref": "NetworkPlacementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "networks": { "methods": { "addPeering": { @@ -43897,7 +43991,7 @@ } } }, - "revision": "20240305", + "revision": "20240312", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -59360,7 +59454,7 @@ "additionalProperties": { "type": "string" }, - "description": "Resource manager tags to be bound to the instance group manager. Tag keys and values have the same definition as resource manager tags. Keys must be in the format `tagKeys/123`, and values are in the format `tagValues/456`. The field is allowed for INSERT only.", + "description": "Resource manager tags to bind to the managed instance group. The tags are key-value pairs. Keys must be in the format tagKeys/123 and values in the format tagValues/456. For more information, see Manage tags for resources.", "type": "object" } }, @@ -62184,7 +62278,7 @@ "type": "string" }, "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", @@ -69768,11 +69862,13 @@ "description": "The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet.", "enum": [ "GVNIC", + "IDPF", "UNSPECIFIED_NIC_TYPE", "VIRTIO_NET" ], "enumDescriptions": [ "GVNIC", + "IDPF", "No type specified.", "VIRTIO" ], @@ -70108,6 +70204,485 @@ }, "type": "object" }, + "NetworkPlacement": { + "description": "NetworkPlacement Represents a Google managed network placement resource.", + "id": "NetworkPlacement", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional description of this resource.", + "type": "string" + }, + "features": { + "$ref": "NetworkPlacementNetworkFeatures", + "description": "[Output Only] Features supported by the network." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#networkPlacement", + "description": "[Output Only] Type of the resource. Always compute#networkPlacement for network placements.", + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "[Output Only] Server-defined URL for this resource with the resource id.", + "type": "string" + }, + "zone": { + "description": "[Output Only] Zone to which the network is restricted.", + "type": "string" + } + }, + "type": "object" + }, + "NetworkPlacementNetworkFeatures": { + "id": "NetworkPlacementNetworkFeatures", + "properties": { + "allowAutoModeSubnet": { + "description": "Specifies whether auto mode subnet creation is allowed.", + "enum": [ + "AUTO_MODE_SUBNET_ALLOWED", + "AUTO_MODE_SUBNET_BLOCKED", + "AUTO_MODE_SUBNET_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowCloudNat": { + "description": "Specifies whether cloud NAT creation is allowed.", + "enum": [ + "CLOUD_NAT_ALLOWED", + "CLOUD_NAT_BLOCKED", + "CLOUD_NAT_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowCloudRouter": { + "description": "Specifies whether cloud router creation is allowed.", + "enum": [ + "CLOUD_ROUTER_ALLOWED", + "CLOUD_ROUTER_BLOCKED", + "CLOUD_ROUTER_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowInterconnect": { + "description": "Specifies whether Cloud Interconnect creation is allowed.", + "enum": [ + "INTERCONNECT_ALLOWED", + "INTERCONNECT_BLOCKED", + "INTERCONNECT_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowLoadBalancing": { + "description": "Specifies whether cloud load balancing is allowed.", + "enum": [ + "LOAD_BALANCING_ALLOWED", + "LOAD_BALANCING_BLOCKED", + "LOAD_BALANCING_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowMultiNicInSameNetwork": { + "description": "Specifies whether multi-nic in the same network is allowed.", + "enum": [ + "MULTI_NIC_IN_SAME_NETWORK_ALLOWED", + "MULTI_NIC_IN_SAME_NETWORK_BLOCKED", + "MULTI_NIC_IN_SAME_NETWORK_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowPacketMirroring": { + "description": "Specifies whether Packet Mirroring 1.0 is supported.", + "enum": [ + "PACKET_MIRRORING_ALLOWED", + "PACKET_MIRRORING_BLOCKED", + "PACKET_MIRRORING_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowPrivateGoogleAccess": { + "description": "Specifies whether private Google access is allowed.", + "enum": [ + "PRIVATE_GOOGLE_ACCESS_ALLOWED", + "PRIVATE_GOOGLE_ACCESS_BLOCKED", + "PRIVATE_GOOGLE_ACCESS_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowPsc": { + "description": "Specifies whether PSC creation is allowed.", + "enum": [ + "PSC_ALLOWED", + "PSC_BLOCKED", + "PSC_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowSameNetworkUnicast": { + "description": "Specifies whether unicast within the same network is allowed.", + "enum": [ + "SAME_NETWORK_UNICAST_ALLOWED", + "SAME_NETWORK_UNICAST_BLOCKED", + "SAME_NETWORK_UNICAST_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowStaticRoutes": { + "description": "Specifies whether static route creation is allowed.", + "enum": [ + "STATIC_ROUTES_ALLOWED", + "STATIC_ROUTES_BLOCKED", + "STATIC_ROUTES_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowVpcPeering": { + "description": "Specifies whether VPC peering is allowed.", + "enum": [ + "VPC_PEERING_ALLOWED", + "VPC_PEERING_BLOCKED", + "VPC_PEERING_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowVpn": { + "description": "Specifies whether VPN creation is allowed.", + "enum": [ + "VPN_ALLOWED", + "VPN_BLOCKED", + "VPN_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "allowedSubnetPurposes": { + "description": "Specifies which subnetwork purposes are supported.", + "items": { + "enum": [ + "SUBNET_PURPOSE_CUSTOM_HARDWARE", + "SUBNET_PURPOSE_PRIVATE", + "SUBNET_PURPOSE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "allowedSubnetStackTypes": { + "description": "Specifies which subnetwork stack types are supported.", + "items": { + "enum": [ + "SUBNET_STACK_TYPE_IPV4_IPV6", + "SUBNET_STACK_TYPE_IPV4_ONLY", + "SUBNET_STACK_TYPE_IPV6_ONLY", + "SUBNET_STACK_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "interfaceTypes": { + "description": "If set, limits the interface types that the network supports. If empty, all interface types are supported.", + "items": { + "enum": [ + "GVNIC", + "IDPF", + "UNSPECIFIED_NIC_TYPE", + "VIRTIO_NET" + ], + "enumDescriptions": [ + "GVNIC", + "IDPF", + "No type specified.", + "VIRTIO" + ], + "type": "string" + }, + "type": "array" + }, + "multicast": { + "description": "Specifies which type of multicast is supported.", + "enum": [ + "MULTICAST_SDN", + "MULTICAST_ULL", + "MULTICAST_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "unicast": { + "description": "Specifies which type of unicast is supported.", + "enum": [ + "UNICAST_SDN", + "UNICAST_ULL", + "UNICAST_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "NetworkPlacementsListResponse": { + "description": "Contains a list of network placements.", + "id": "NetworkPlacementsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of NetworkPlacement resources.", + "items": { + "$ref": "NetworkPlacement" + }, + "type": "array" + }, + "kind": { + "default": "compute#networkPlacementList", + "description": "[Output Only] Type of resource. Always compute#networkPlacementList for network placements.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "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" + } + }, + "type": "object" + }, "NetworkRoutingConfig": { "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", "id": "NetworkRoutingConfig", @@ -78088,11 +78663,6 @@ }, "type": "array" }, - "skipInapplicableInstances": { - "deprecated": true, - "description": "Skip instances which cannot be deleted (instances not belonging to this managed group, already being deleted or being abandoned). If `false`, fail whole flow, if such instance is passed. DEPRECATED: Use skip_instances_on_validation_error instead.", - "type": "boolean" - }, "skipInstancesOnValidationError": { "description": "Specifies whether the request should proceed despite the inclusion of instances that are not members of the group or that are already in the process of being deleted or abandoned. If this field is set to `false` and such an instance is specified in the request, the operation fails. The operation always fails if the request contains a malformed instance URL or a reference to an instance that exists in a zone or region other than the group's zone or region.", "type": "boolean" diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index 57c27f2b53a..f1e53d46722 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -206,6 +206,7 @@ func New(client *http.Client) (*Service, error) { s.NetworkEdgeSecurityServices = NewNetworkEdgeSecurityServicesService(s) s.NetworkEndpointGroups = NewNetworkEndpointGroupsService(s) s.NetworkFirewallPolicies = NewNetworkFirewallPoliciesService(s) + s.NetworkPlacements = NewNetworkPlacementsService(s) s.Networks = NewNetworksService(s) s.NodeGroups = NewNodeGroupsService(s) s.NodeTemplates = NewNodeTemplatesService(s) @@ -364,6 +365,8 @@ type Service struct { NetworkFirewallPolicies *NetworkFirewallPoliciesService + NetworkPlacements *NetworkPlacementsService + Networks *NetworksService NodeGroups *NodeGroupsService @@ -887,6 +890,15 @@ type NetworkFirewallPoliciesService struct { s *Service } +func NewNetworkPlacementsService(s *Service) *NetworkPlacementsService { + rs := &NetworkPlacementsService{s: s} + return rs +} + +type NetworkPlacementsService struct { + s *Service +} + func NewNetworksService(s *Service) *NetworksService { rs := &NetworksService{s: s} return rs @@ -23868,11 +23880,10 @@ func (s *InstanceGroupManagerListWarningData) MarshalJSON() ([]byte, error) { // InstanceGroupManagerParams: Input only additional params for instance // group manager creation. type InstanceGroupManagerParams struct { - // ResourceManagerTags: Resource manager tags to be bound to the - // instance group manager. Tag keys and values have the same definition - // as resource manager tags. Keys must be in the format `tagKeys/123`, - // and values are in the format `tagValues/456`. The field is allowed - // for INSERT only. + // ResourceManagerTags: Resource manager tags to bind to the managed + // instance group. The tags are key-value pairs. Keys must be in the + // format tagKeys/123 and values in the format tagValues/456. For more + // information, see Manage tags for resources. ResourceManagerTags map[string]string `json:"resourceManagerTags,omitempty"` // ForceSendFields is a list of field names (e.g. "ResourceManagerTags") @@ -28161,7 +28172,7 @@ type InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy struct { ShortName string `json:"shortName,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" @@ -38769,6 +38780,7 @@ type NetworkInterface struct { // // Possible values: // "GVNIC" - GVNIC + // "IDPF" - IDPF // "UNSPECIFIED_NIC_TYPE" - No type specified. // "VIRTIO_NET" - VIRTIO NicType string `json:"nicType,omitempty"` @@ -39232,6 +39244,449 @@ func (s *NetworkPerformanceConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// NetworkPlacement: NetworkPlacement Represents a Google managed +// network placement resource. +type NetworkPlacement struct { + // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text + // format. + CreationTimestamp string `json:"creationTimestamp,omitempty"` + + // Description: [Output Only] An optional description of this resource. + Description string `json:"description,omitempty"` + + // Features: [Output Only] Features supported by the network. + Features *NetworkPlacementNetworkFeatures `json:"features,omitempty"` + + // Id: [Output Only] The unique identifier for the resource. This + // identifier is defined by the server. + Id uint64 `json:"id,omitempty,string"` + + // Kind: [Output Only] Type of the resource. Always + // compute#networkPlacement for network placements. + Kind string `json:"kind,omitempty"` + + // Name: [Output Only] Name of the resource. + Name string `json:"name,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for the resource. + SelfLink string `json:"selfLink,omitempty"` + + // SelfLinkWithId: [Output Only] Server-defined URL for this resource + // with the resource id. + SelfLinkWithId string `json:"selfLinkWithId,omitempty"` + + // Zone: [Output Only] Zone to which the network is restricted. + Zone string `json:"zone,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreationTimestamp") + // 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. "CreationTimestamp") 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 *NetworkPlacement) MarshalJSON() ([]byte, error) { + type NoMethod NetworkPlacement + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type NetworkPlacementNetworkFeatures struct { + // AllowAutoModeSubnet: Specifies whether auto mode subnet creation is + // allowed. + // + // Possible values: + // "AUTO_MODE_SUBNET_ALLOWED" + // "AUTO_MODE_SUBNET_BLOCKED" + // "AUTO_MODE_SUBNET_UNSPECIFIED" + AllowAutoModeSubnet string `json:"allowAutoModeSubnet,omitempty"` + + // AllowCloudNat: Specifies whether cloud NAT creation is allowed. + // + // Possible values: + // "CLOUD_NAT_ALLOWED" + // "CLOUD_NAT_BLOCKED" + // "CLOUD_NAT_UNSPECIFIED" + AllowCloudNat string `json:"allowCloudNat,omitempty"` + + // AllowCloudRouter: Specifies whether cloud router creation is allowed. + // + // Possible values: + // "CLOUD_ROUTER_ALLOWED" + // "CLOUD_ROUTER_BLOCKED" + // "CLOUD_ROUTER_UNSPECIFIED" + AllowCloudRouter string `json:"allowCloudRouter,omitempty"` + + // AllowInterconnect: Specifies whether Cloud Interconnect creation is + // allowed. + // + // Possible values: + // "INTERCONNECT_ALLOWED" + // "INTERCONNECT_BLOCKED" + // "INTERCONNECT_UNSPECIFIED" + AllowInterconnect string `json:"allowInterconnect,omitempty"` + + // AllowLoadBalancing: Specifies whether cloud load balancing is + // allowed. + // + // Possible values: + // "LOAD_BALANCING_ALLOWED" + // "LOAD_BALANCING_BLOCKED" + // "LOAD_BALANCING_UNSPECIFIED" + AllowLoadBalancing string `json:"allowLoadBalancing,omitempty"` + + // AllowMultiNicInSameNetwork: Specifies whether multi-nic in the same + // network is allowed. + // + // Possible values: + // "MULTI_NIC_IN_SAME_NETWORK_ALLOWED" + // "MULTI_NIC_IN_SAME_NETWORK_BLOCKED" + // "MULTI_NIC_IN_SAME_NETWORK_UNSPECIFIED" + AllowMultiNicInSameNetwork string `json:"allowMultiNicInSameNetwork,omitempty"` + + // AllowPacketMirroring: Specifies whether Packet Mirroring 1.0 is + // supported. + // + // Possible values: + // "PACKET_MIRRORING_ALLOWED" + // "PACKET_MIRRORING_BLOCKED" + // "PACKET_MIRRORING_UNSPECIFIED" + AllowPacketMirroring string `json:"allowPacketMirroring,omitempty"` + + // AllowPrivateGoogleAccess: Specifies whether private Google access is + // allowed. + // + // Possible values: + // "PRIVATE_GOOGLE_ACCESS_ALLOWED" + // "PRIVATE_GOOGLE_ACCESS_BLOCKED" + // "PRIVATE_GOOGLE_ACCESS_UNSPECIFIED" + AllowPrivateGoogleAccess string `json:"allowPrivateGoogleAccess,omitempty"` + + // AllowPsc: Specifies whether PSC creation is allowed. + // + // Possible values: + // "PSC_ALLOWED" + // "PSC_BLOCKED" + // "PSC_UNSPECIFIED" + AllowPsc string `json:"allowPsc,omitempty"` + + // AllowSameNetworkUnicast: Specifies whether unicast within the same + // network is allowed. + // + // Possible values: + // "SAME_NETWORK_UNICAST_ALLOWED" + // "SAME_NETWORK_UNICAST_BLOCKED" + // "SAME_NETWORK_UNICAST_UNSPECIFIED" + AllowSameNetworkUnicast string `json:"allowSameNetworkUnicast,omitempty"` + + // AllowStaticRoutes: Specifies whether static route creation is + // allowed. + // + // Possible values: + // "STATIC_ROUTES_ALLOWED" + // "STATIC_ROUTES_BLOCKED" + // "STATIC_ROUTES_UNSPECIFIED" + AllowStaticRoutes string `json:"allowStaticRoutes,omitempty"` + + // AllowVpcPeering: Specifies whether VPC peering is allowed. + // + // Possible values: + // "VPC_PEERING_ALLOWED" + // "VPC_PEERING_BLOCKED" + // "VPC_PEERING_UNSPECIFIED" + AllowVpcPeering string `json:"allowVpcPeering,omitempty"` + + // AllowVpn: Specifies whether VPN creation is allowed. + // + // Possible values: + // "VPN_ALLOWED" + // "VPN_BLOCKED" + // "VPN_UNSPECIFIED" + AllowVpn string `json:"allowVpn,omitempty"` + + // AllowedSubnetPurposes: Specifies which subnetwork purposes are + // supported. + // + // Possible values: + // "SUBNET_PURPOSE_CUSTOM_HARDWARE" + // "SUBNET_PURPOSE_PRIVATE" + // "SUBNET_PURPOSE_UNSPECIFIED" + AllowedSubnetPurposes []string `json:"allowedSubnetPurposes,omitempty"` + + // AllowedSubnetStackTypes: Specifies which subnetwork stack types are + // supported. + // + // Possible values: + // "SUBNET_STACK_TYPE_IPV4_IPV6" + // "SUBNET_STACK_TYPE_IPV4_ONLY" + // "SUBNET_STACK_TYPE_IPV6_ONLY" + // "SUBNET_STACK_TYPE_UNSPECIFIED" + AllowedSubnetStackTypes []string `json:"allowedSubnetStackTypes,omitempty"` + + // InterfaceTypes: If set, limits the interface types that the network + // supports. If empty, all interface types are supported. + // + // Possible values: + // "GVNIC" - GVNIC + // "IDPF" - IDPF + // "UNSPECIFIED_NIC_TYPE" - No type specified. + // "VIRTIO_NET" - VIRTIO + InterfaceTypes []string `json:"interfaceTypes,omitempty"` + + // Multicast: Specifies which type of multicast is supported. + // + // Possible values: + // "MULTICAST_SDN" + // "MULTICAST_ULL" + // "MULTICAST_UNSPECIFIED" + Multicast string `json:"multicast,omitempty"` + + // Unicast: Specifies which type of unicast is supported. + // + // Possible values: + // "UNICAST_SDN" + // "UNICAST_ULL" + // "UNICAST_UNSPECIFIED" + Unicast string `json:"unicast,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AllowAutoModeSubnet") + // 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. "AllowAutoModeSubnet") 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 *NetworkPlacementNetworkFeatures) MarshalJSON() ([]byte, error) { + type NoMethod NetworkPlacementNetworkFeatures + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// NetworkPlacementsListResponse: Contains a list of network placements. +type NetworkPlacementsListResponse struct { + Etag string `json:"etag,omitempty"` + + // Id: [Output Only] Unique identifier for the resource; defined by the + // server. + Id string `json:"id,omitempty"` + + // Items: A list of NetworkPlacement resources. + Items []*NetworkPlacement `json:"items,omitempty"` + + // Kind: [Output Only] Type of resource. Always + // compute#networkPlacementList for network placements. + Kind string `json:"kind,omitempty"` + + // NextPageToken: [Output Only] This token allows you to get the next + // page of results for list requests. If the number of results is larger + // than maxResults, use the nextPageToken as a value for the query + // parameter pageToken in the next list request. Subsequent list + // requests will have their own nextPageToken to continue paging through + // the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SelfLink: [Output Only] Server-defined URL for this resource. + SelfLink string `json:"selfLink,omitempty"` + + // Unreachables: [Output Only] Unreachable resources. end_interface: + // MixerListResponseWithEtagBuilder + Unreachables []string `json:"unreachables,omitempty"` + + // Warning: [Output Only] Informational warning message. + Warning *NetworkPlacementsListResponseWarning `json:"warning,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Etag") 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. "Etag") 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 *NetworkPlacementsListResponse) MarshalJSON() ([]byte, error) { + type NoMethod NetworkPlacementsListResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// NetworkPlacementsListResponseWarning: [Output Only] Informational +// warning message. +type NetworkPlacementsListResponseWarning 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 []*NetworkPlacementsListResponseWarningData `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 *NetworkPlacementsListResponseWarning) MarshalJSON() ([]byte, error) { + type NoMethod NetworkPlacementsListResponseWarning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type NetworkPlacementsListResponseWarningData 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 *NetworkPlacementsListResponseWarningData) MarshalJSON() ([]byte, error) { + type NoMethod NetworkPlacementsListResponseWarningData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // NetworkRoutingConfig: A routing configuration attached to a network // resource. The message includes the list of routers associated with // the network, and a flag indicating the type of routing behavior to @@ -49835,12 +50290,6 @@ type RegionInstanceGroupManagersDeleteInstancesRequest struct { // zones/[ZONE]/instances/[INSTANCE_NAME]. Instances []string `json:"instances,omitempty"` - // SkipInapplicableInstances: Skip instances which cannot be deleted - // (instances not belonging to this managed group, already being deleted - // or being abandoned). If `false`, fail whole flow, if such instance is - // passed. DEPRECATED: Use skip_instances_on_validation_error instead. - SkipInapplicableInstances bool `json:"skipInapplicableInstances,omitempty"` - // SkipInstancesOnValidationError: Specifies whether the request should // proceed despite the inclusion of instances that are not members of // the group or that are already in the process of being deleted or @@ -154631,6 +155080,448 @@ func (c *NetworkFirewallPoliciesTestIamPermissionsCall) Do(opts ...googleapi.Cal } +// method id "compute.networkPlacements.get": + +type NetworkPlacementsGetCall struct { + s *Service + project string + networkPlacement string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the specified network placement. +// +// - networkPlacement: Name of the network placement to return. +// - project: Project ID for this request. +func (r *NetworkPlacementsService) Get(project string, networkPlacement string) *NetworkPlacementsGetCall { + c := &NetworkPlacementsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.networkPlacement = networkPlacement + 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 *NetworkPlacementsGetCall) Fields(s ...googleapi.Field) *NetworkPlacementsGetCall { + 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 *NetworkPlacementsGetCall) IfNoneMatch(entityTag string) *NetworkPlacementsGetCall { + 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 *NetworkPlacementsGetCall) Context(ctx context.Context) *NetworkPlacementsGetCall { + 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 *NetworkPlacementsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NetworkPlacementsGetCall) 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, "projects/{project}/global/networkPlacements/{networkPlacement}") + 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{ + "project": c.project, + "networkPlacement": c.networkPlacement, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.networkPlacements.get" call. +// Exactly one of *NetworkPlacement or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *NetworkPlacement.ServerResponse.Header 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 *NetworkPlacementsGetCall) Do(opts ...googleapi.CallOption) (*NetworkPlacement, 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 := &NetworkPlacement{ + 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": "Returns the specified network placement.", + // "flatPath": "projects/{project}/global/networkPlacements/{networkPlacement}", + // "httpMethod": "GET", + // "id": "compute.networkPlacements.get", + // "parameterOrder": [ + // "project", + // "networkPlacement" + // ], + // "parameters": { + // "networkPlacement": { + // "description": "Name of the network placement to return.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // } + // }, + // "path": "projects/{project}/global/networkPlacements/{networkPlacement}", + // "response": { + // "$ref": "NetworkPlacement" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.networkPlacements.list": + +type NetworkPlacementsListCall struct { + s *Service + project string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves a list of network placements available to the +// specified project. +// +// - project: Project ID for this request. +func (r *NetworkPlacementsService) List(project string) *NetworkPlacementsListCall { + c := &NetworkPlacementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters resources listed in the response. Most Compute resources +// support two types of filter expressions: expressions that support +// regular expressions and expressions that follow API improvement +// proposal AIP-160. These two types of filter expressions cannot be +// mixed in one request. If you want to use AIP-160, your expression +// must specify the field name, an operator, and the value that you want +// to use for filtering. The value must be a string, a number, or a +// boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` +// or `:`. For example, if you are filtering Compute Engine instances, +// you can exclude instances named `example-instance` by specifying +// `name != example-instance`. The `:*` comparison can be used to test +// whether a key has been defined. For example, to find all objects with +// `owner` label use: ``` labels.owner:* ``` You can also filter nested +// fields. For example, you could specify `scheduling.automaticRestart = +// false` to include instances only if they are not scheduled for +// automatic restarts. You can use filtering on nested fields to filter +// based on resource labels. To filter on multiple expressions, provide +// each separate expression within parentheses. For example: ``` +// (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") +// ``` By default, each expression is an `AND` expression. However, you +// can include `AND` and `OR` expressions explicitly. For example: ``` +// (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") +// AND (scheduling.automaticRestart = true) ``` If you want to use a +// regular expression, use the `eq` (equal) or `ne` (not equal) operator +// against a single un-parenthesized expression with or without quotes +// or against multiple parenthesized expressions. Examples: `fieldname +// eq unquoted literal` `fieldname eq 'single quoted literal'` +// `fieldname eq "double quoted literal" `(fieldname1 eq literal) +// (fieldname2 ne "literal")` The literal value is interpreted as a +// regular expression using Google RE2 library syntax. The literal value +// must match the entire field. For example, to filter for instances +// that do not end with name "instance", you would use `name ne +// .*instance`. You cannot combine constraints on multiple fields using +// regular expressions. +func (c *NetworkPlacementsListCall) Filter(filter string) *NetworkPlacementsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// MaxResults sets the optional parameter "maxResults": The maximum +// number of results per page that should be returned. If the number of +// available results is larger than `maxResults`, Compute Engine returns +// a `nextPageToken` that can be used to get the next page of results in +// subsequent list requests. Acceptable values are `0` to `500`, +// inclusive. (Default: `500`) +func (c *NetworkPlacementsListCall) MaxResults(maxResults int64) *NetworkPlacementsListCall { + c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sorts list results by +// a certain order. By default, results are returned in alphanumerical +// order based on the resource name. You can also sort results in +// descending order based on the creation timestamp using +// `orderBy="creationTimestamp desc". This sorts results based on the +// `creationTimestamp` field in reverse chronological order (newest +// result first). Use this to sort resources like operations so that the +// newest operation is returned first. Currently, only sorting by `name` +// or `creationTimestamp desc` is supported. +func (c *NetworkPlacementsListCall) OrderBy(orderBy string) *NetworkPlacementsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageToken sets the optional parameter "pageToken": Specifies a page +// token to use. Set `pageToken` to the `nextPageToken` returned by a +// previous list request to get the next page of results. +func (c *NetworkPlacementsListCall) PageToken(pageToken string) *NetworkPlacementsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// ReturnPartialSuccess sets the optional parameter +// "returnPartialSuccess": Opt-in for partial success behavior which +// provides partial results in case of failure. The default value is +// false. For example, when partial success behavior is enabled, +// aggregatedList for a single zone scope either returns all resources +// in the zone or no resources, with an error code. +func (c *NetworkPlacementsListCall) ReturnPartialSuccess(returnPartialSuccess bool) *NetworkPlacementsListCall { + c.urlParams_.Set("returnPartialSuccess", fmt.Sprint(returnPartialSuccess)) + 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 *NetworkPlacementsListCall) Fields(s ...googleapi.Field) *NetworkPlacementsListCall { + 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 *NetworkPlacementsListCall) IfNoneMatch(entityTag string) *NetworkPlacementsListCall { + 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 *NetworkPlacementsListCall) Context(ctx context.Context) *NetworkPlacementsListCall { + 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 *NetworkPlacementsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *NetworkPlacementsListCall) 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, "projects/{project}/global/networkPlacements") + 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{ + "project": c.project, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.networkPlacements.list" call. +// Exactly one of *NetworkPlacementsListResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *NetworkPlacementsListResponse.ServerResponse.Header 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 *NetworkPlacementsListCall) Do(opts ...googleapi.CallOption) (*NetworkPlacementsListResponse, 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 := &NetworkPlacementsListResponse{ + 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": "Retrieves a list of network placements available to the specified project.", + // "flatPath": "projects/{project}/global/networkPlacements", + // "httpMethod": "GET", + // "id": "compute.networkPlacements.list", + // "parameterOrder": [ + // "project" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\u003e`, `\u003c`, `\u003c=`, `\u003e=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + // "location": "query", + // "type": "string" + // }, + // "maxResults": { + // "default": "500", + // "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + // "format": "uint32", + // "location": "query", + // "minimum": "0", + // "type": "integer" + // }, + // "orderBy": { + // "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + // "location": "query", + // "type": "string" + // }, + // "pageToken": { + // "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + // "location": "query", + // "type": "string" + // }, + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "returnPartialSuccess": { + // "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "projects/{project}/global/networkPlacements", + // "response": { + // "$ref": "NetworkPlacementsListResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *NetworkPlacementsListCall) Pages(ctx context.Context, f func(*NetworkPlacementsListResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "compute.networks.addPeering": type NetworksAddPeeringCall struct { diff --git a/compute/v1/compute-api.json b/compute/v1/compute-api.json index cc3f5ae3233..37484ebdce0 100644 --- a/compute/v1/compute-api.json +++ b/compute/v1/compute-api.json @@ -9304,6 +9304,92 @@ } } }, + "instanceSettings": { + "methods": { + "get": { + "description": "Get Instance settings.", + "flatPath": "projects/{project}/zones/{zone}/instanceSettings", + "httpMethod": "GET", + "id": "compute.instanceSettings.get", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instanceSettings", + "response": { + "$ref": "InstanceSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patch Instance settings", + "flatPath": "projects/{project}/zones/{zone}/instanceSettings", + "httpMethod": "PATCH", + "id": "compute.instanceSettings.patch", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The zone scoping this request. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instanceSettings", + "request": { + "$ref": "InstanceSettings" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "instanceTemplates": { "methods": { "aggregatedList": { @@ -37285,7 +37371,7 @@ } } }, - "revision": "20240305", + "revision": "20240312", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -52326,6 +52412,49 @@ }, "type": "object" }, + "InstanceSettings": { + "description": "Represents a Instance Settings resource. You can use instance settings to configure default settings for Compute Engine VM instances. For example, you can use it to configure default machine type of Compute Engine VM instances.", + "id": "InstanceSettings", + "properties": { + "fingerprint": { + "description": "Specifies a fingerprint for instance settings, which is essentially a hash of the instance settings resource's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update the instance settings resource. You must always provide an up-to-date fingerprint hash in order to update or change the resource, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the resource.", + "format": "byte", + "type": "string" + }, + "kind": { + "default": "compute#instanceSettings", + "description": "[Output Only] Type of the resource. Always compute#instance_settings for instance settings.", + "type": "string" + }, + "metadata": { + "$ref": "InstanceSettingsMetadata", + "description": "The metadata key/value pairs assigned to all the instances in the corresponding scope." + }, + "zone": { + "description": "[Output Only] URL of the zone where the resource resides You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "InstanceSettingsMetadata": { + "id": "InstanceSettingsMetadata", + "properties": { + "items": { + "additionalProperties": { + "type": "string" + }, + "description": "A metadata key/value items map. The total size of all keys and values must be less than 512KB.", + "type": "object" + }, + "kind": { + "default": "compute#metadata", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", + "type": "string" + } + }, + "type": "object" + }, "InstanceTemplate": { "description": "Represents an Instance Template resource. Google Compute Engine has two Instance Template resources: * [Global](/compute/docs/reference/rest/v1/instanceTemplates) * [Regional](/compute/docs/reference/rest/v1/regionInstanceTemplates) You can reuse a global instance template in different regions whereas you can use a regional instance template in a specified region only. If you want to reduce cross-region dependency or achieve data residency, use a regional instance template. To create VMs, managed instance groups, and reservations, you can use either global or regional instance templates. For more information, read Instance Templates.", "id": "InstanceTemplate", @@ -52935,7 +53064,7 @@ "type": "string" }, "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/v1/compute-gen.go b/compute/v1/compute-gen.go index e7519e20690..e575d96e691 100644 --- a/compute/v1/compute-gen.go +++ b/compute/v1/compute-gen.go @@ -188,6 +188,7 @@ func New(client *http.Client) (*Service, error) { s.InstanceGroupManagerResizeRequests = NewInstanceGroupManagerResizeRequestsService(s) s.InstanceGroupManagers = NewInstanceGroupManagersService(s) s.InstanceGroups = NewInstanceGroupsService(s) + s.InstanceSettings = NewInstanceSettingsService(s) s.InstanceTemplates = NewInstanceTemplatesService(s) s.Instances = NewInstancesService(s) s.InstantSnapshots = NewInstantSnapshotsService(s) @@ -320,6 +321,8 @@ type Service struct { InstanceGroups *InstanceGroupsService + InstanceSettings *InstanceSettingsService + InstanceTemplates *InstanceTemplatesService Instances *InstancesService @@ -701,6 +704,15 @@ type InstanceGroupsService struct { s *Service } +func NewInstanceSettingsService(s *Service) *InstanceSettingsService { + rs := &InstanceSettingsService{s: s} + return rs +} + +type InstanceSettingsService struct { + s *Service +} + func NewInstanceTemplatesService(s *Service) *InstanceTemplatesService { rs := &InstanceTemplatesService{s: s} return rs @@ -23422,6 +23434,93 @@ func (s *InstanceReference) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InstanceSettings: Represents a Instance Settings resource. You can +// use instance settings to configure default settings for Compute +// Engine VM instances. For example, you can use it to configure default +// machine type of Compute Engine VM instances. +type InstanceSettings struct { + // Fingerprint: Specifies a fingerprint for instance settings, which is + // essentially a hash of the instance settings resource's contents and + // used for optimistic locking. The fingerprint is initially generated + // by Compute Engine and changes after every request to modify or update + // the instance settings resource. You must always provide an up-to-date + // fingerprint hash in order to update or change the resource, otherwise + // the request will fail with error 412 conditionNotMet. To see the + // latest fingerprint, make a get() request to retrieve the resource. + Fingerprint string `json:"fingerprint,omitempty"` + + // Kind: [Output Only] Type of the resource. Always + // compute#instance_settings for instance settings. + Kind string `json:"kind,omitempty"` + + // Metadata: The metadata key/value pairs assigned to all the instances + // in the corresponding scope. + Metadata *InstanceSettingsMetadata `json:"metadata,omitempty"` + + // Zone: [Output Only] URL of the zone where the resource resides You + // must specify this field as part of the HTTP request URL. It is not + // settable as a field in the request body. + Zone string `json:"zone,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Fingerprint") 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. "Fingerprint") 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 *InstanceSettings) MarshalJSON() ([]byte, error) { + type NoMethod InstanceSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type InstanceSettingsMetadata struct { + // Items: A metadata key/value items map. The total size of all keys and + // values must be less than 512KB. + Items map[string]string `json:"items,omitempty"` + + // Kind: [Output Only] Type of the resource. Always compute#metadata for + // metadata. + Kind string `json:"kind,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Items") 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. "Items") 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 *InstanceSettingsMetadata) MarshalJSON() ([]byte, error) { + type NoMethod InstanceSettingsMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // InstanceTemplate: Represents an Instance Template resource. Google // Compute Engine has two Instance Template resources: * Global // (/compute/docs/reference/rest/v1/instanceTemplates) * Regional @@ -24225,7 +24324,7 @@ type InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy struct { ShortName string `json:"shortName,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" @@ -106341,6 +106440,354 @@ func (c *InstanceGroupsSetNamedPortsCall) Do(opts ...googleapi.CallOption) (*Ope } +// method id "compute.instanceSettings.get": + +type InstanceSettingsGetCall struct { + s *Service + project string + zone string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Get Instance settings. +// +// - project: Project ID for this request. +// - zone: Name of the zone for this request. +func (r *InstanceSettingsService) Get(project string, zone string) *InstanceSettingsGetCall { + c := &InstanceSettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + 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 *InstanceSettingsGetCall) Fields(s ...googleapi.Field) *InstanceSettingsGetCall { + 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 *InstanceSettingsGetCall) IfNoneMatch(entityTag string) *InstanceSettingsGetCall { + 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 *InstanceSettingsGetCall) Context(ctx context.Context) *InstanceSettingsGetCall { + 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 *InstanceSettingsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstanceSettingsGetCall) 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, "projects/{project}/zones/{zone}/instanceSettings") + 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{ + "project": c.project, + "zone": c.zone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instanceSettings.get" call. +// Exactly one of *InstanceSettings or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *InstanceSettings.ServerResponse.Header 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 *InstanceSettingsGetCall) Do(opts ...googleapi.CallOption) (*InstanceSettings, 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 := &InstanceSettings{ + 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": "Get Instance settings.", + // "flatPath": "projects/{project}/zones/{zone}/instanceSettings", + // "httpMethod": "GET", + // "id": "compute.instanceSettings.get", + // "parameterOrder": [ + // "project", + // "zone" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "zone": { + // "description": "Name of the zone for this request.", + // "location": "path", + // "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + // "required": true, + // "type": "string" + // } + // }, + // "path": "projects/{project}/zones/{zone}/instanceSettings", + // "response": { + // "$ref": "InstanceSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute", + // "https://www.googleapis.com/auth/compute.readonly" + // ] + // } + +} + +// method id "compute.instanceSettings.patch": + +type InstanceSettingsPatchCall struct { + s *Service + project string + zone string + instancesettings *InstanceSettings + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Patch Instance settings +// +// - project: Project ID for this request. +// - zone: The zone scoping this request. It should conform to RFC1035. +func (r *InstanceSettingsService) Patch(project string, zone string, instancesettings *InstanceSettings) *InstanceSettingsPatchCall { + c := &InstanceSettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.zone = zone + c.instancesettings = instancesettings + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. For example, consider a +// situation where you make an initial request and the request times +// out. If you make the request again with the same request ID, the +// server can check if original operation with the same request ID was +// received, and if so, will ignore the second request. This prevents +// clients from accidentally creating duplicate commitments. The request +// ID must be a valid UUID with the exception that zero UUID is not +// supported ( 00000000-0000-0000-0000-000000000000). +func (c *InstanceSettingsPatchCall) RequestId(requestId string) *InstanceSettingsPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// UpdateMask sets the optional parameter "updateMask": update_mask +// indicates fields to be updated as part of this request. +func (c *InstanceSettingsPatchCall) UpdateMask(updateMask string) *InstanceSettingsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + 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 *InstanceSettingsPatchCall) Fields(s ...googleapi.Field) *InstanceSettingsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *InstanceSettingsPatchCall) Context(ctx context.Context) *InstanceSettingsPatchCall { + 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 *InstanceSettingsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *InstanceSettingsPatchCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.instancesettings) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/zones/{zone}/instanceSettings") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "zone": c.zone, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.instanceSettings.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header 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 *InstanceSettingsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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": "Patch Instance settings", + // "flatPath": "projects/{project}/zones/{zone}/instanceSettings", + // "httpMethod": "PATCH", + // "id": "compute.instanceSettings.patch", + // "parameterOrder": [ + // "project", + // "zone" + // ], + // "parameters": { + // "project": { + // "description": "Project ID for this request.", + // "location": "path", + // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "updateMask": { + // "description": "update_mask indicates fields to be updated as part of this request.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // }, + // "zone": { + // "description": "The zone scoping this request. It should conform to RFC1035.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "projects/{project}/zones/{zone}/instanceSettings", + // "request": { + // "$ref": "InstanceSettings" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/compute" + // ] + // } + +} + // method id "compute.instanceTemplates.aggregatedList": type InstanceTemplatesAggregatedListCall struct { diff --git a/dataproc/v1/dataproc-api.json b/dataproc/v1/dataproc-api.json index 9fe51fe0066..04f33ba7b48 100644 --- a/dataproc/v1/dataproc-api.json +++ b/dataproc/v1/dataproc-api.json @@ -16,11 +16,6 @@ "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/dataproc/", "endpoints": [ - { - "description": "Regional Endpoint", - "endpointUrl": "https://dataproc.me-central2.rep.googleapis.com/", - "location": "me-central2" - }, { "description": "Regional Endpoint", "endpointUrl": "https://dataproc.europe-west3.rep.googleapis.com/", @@ -30,6 +25,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://dataproc.europe-west9.rep.googleapis.com/", "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataproc.me-central2.rep.googleapis.com/", + "location": "me-central2" } ], "fullyEncodeReservedExpansion": true, @@ -358,6 +358,34 @@ }, "batches": { "methods": { + "analyze": { + "description": "Analyze a Batch for possible recommendations and insights.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/batches/{batchesId}:analyze", + "httpMethod": "POST", + "id": "dataproc.projects.locations.batches.analyze", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of the batch to analyze in the format \"projects/PROJECT_ID/locations/DATAPROC_REGION/batches/BATCH_ID\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/batches/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:analyze", + "request": { + "$ref": "AnalyzeBatchRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a batch workload that executes asynchronously.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/batches", @@ -3044,7 +3072,7 @@ } } }, - "revision": "20240303", + "revision": "20240320", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3063,6 +3091,17 @@ }, "type": "object" }, + "AnalyzeBatchRequest": { + "description": "A request to analyze a batch workload.", + "id": "AnalyzeBatchRequest", + "properties": { + "requestId": { + "description": "Optional. A unique ID used to identify the request. If the service receives two AnalyzeBatchRequest (http://cloud/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.AnalyzeBatchRequest)s with the same request_id, the second request is ignored and the Operation that corresponds to the first request created and stored in the backend is returned.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + } + }, + "type": "object" + }, "AnalyzeOperationMetadata": { "description": "Metadata describing the Analyze operation.", "id": "AnalyzeOperationMetadata", diff --git a/dataproc/v1/dataproc-gen.go b/dataproc/v1/dataproc-gen.go index d5bfbe41a75..cce1c88c6cc 100644 --- a/dataproc/v1/dataproc-gen.go +++ b/dataproc/v1/dataproc-gen.go @@ -379,6 +379,43 @@ func (s *AcceleratorConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AnalyzeBatchRequest: A request to analyze a batch workload. +type AnalyzeBatchRequest struct { + // RequestId: Optional. A unique ID used to identify the request. If the + // service receives two AnalyzeBatchRequest + // (http://cloud/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.AnalyzeBatchRequest)s + // with the same request_id, the second request is ignored and the + // Operation that corresponds to the first request created and stored in + // the backend is returned.Recommendation: Set this value to a UUID + // (https://en.wikipedia.org/wiki/Universally_unique_identifier).The + // value must contain only letters (a-z, A-Z), numbers (0-9), + // underscores (_), and hyphens (-). The maximum length is 40 + // characters. + RequestId string `json:"requestId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequestId") 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. "RequestId") 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 *AnalyzeBatchRequest) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzeBatchRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AnalyzeOperationMetadata: Metadata describing the Analyze operation. type AnalyzeOperationMetadata struct { // AnalyzedWorkloadName: Output only. name of the workload being @@ -8736,6 +8773,150 @@ func (c *ProjectsLocationsAutoscalingPoliciesUpdateCall) Do(opts ...googleapi.Ca } +// method id "dataproc.projects.locations.batches.analyze": + +type ProjectsLocationsBatchesAnalyzeCall struct { + s *Service + name string + analyzebatchrequest *AnalyzeBatchRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Analyze: Analyze a Batch for possible recommendations and insights. +// +// - name: The fully qualified name of the batch to analyze in the +// format +// "projects/PROJECT_ID/locations/DATAPROC_REGION/batches/BATCH_ID". +func (r *ProjectsLocationsBatchesService) Analyze(name string, analyzebatchrequest *AnalyzeBatchRequest) *ProjectsLocationsBatchesAnalyzeCall { + c := &ProjectsLocationsBatchesAnalyzeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.analyzebatchrequest = analyzebatchrequest + 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 *ProjectsLocationsBatchesAnalyzeCall) Fields(s ...googleapi.Field) *ProjectsLocationsBatchesAnalyzeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsBatchesAnalyzeCall) Context(ctx context.Context) *ProjectsLocationsBatchesAnalyzeCall { + 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 *ProjectsLocationsBatchesAnalyzeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBatchesAnalyzeCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.analyzebatchrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:analyze") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", 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 "dataproc.projects.locations.batches.analyze" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header 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 *ProjectsLocationsBatchesAnalyzeCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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": "Analyze a Batch for possible recommendations and insights.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/batches/{batchesId}:analyze", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.batches.analyze", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of the batch to analyze in the format \"projects/PROJECT_ID/locations/DATAPROC_REGION/batches/BATCH_ID\"", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/batches/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:analyze", + // "request": { + // "$ref": "AnalyzeBatchRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.locations.batches.create": type ProjectsLocationsBatchesCreateCall struct { diff --git a/datastore/v1/datastore-api.json b/datastore/v1/datastore-api.json index 3a04b1f87c6..def7a58be99 100644 --- a/datastore/v1/datastore-api.json +++ b/datastore/v1/datastore-api.json @@ -654,7 +654,7 @@ } } }, - "revision": "20240215", + "revision": "20240317", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -993,6 +993,62 @@ }, "type": "object" }, + "ExecutionStats": { + "description": "Execution statistics for the query.", + "id": "ExecutionStats", + "properties": { + "debugStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", + "type": "object" + }, + "executionDuration": { + "description": "Total time to execute the query in the backend.", + "format": "google-duration", + "type": "string" + }, + "readOperations": { + "description": "Total billable read operations.", + "format": "int64", + "type": "string" + }, + "resultsReturned": { + "description": "Total number of results returned, including documents, projections, aggregation results, keys.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ExplainMetrics": { + "description": "Explain metrics for the query.", + "id": "ExplainMetrics", + "properties": { + "executionStats": { + "$ref": "ExecutionStats", + "description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." + }, + "planSummary": { + "$ref": "PlanSummary", + "description": "Planning phase information for the query." + } + }, + "type": "object" + }, + "ExplainOptions": { + "description": "Explain options for the query.", + "id": "ExplainOptions", + "properties": { + "analyze": { + "description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", + "type": "boolean" + } + }, + "type": "object" + }, "Filter": { "description": "A holder for any type of filter.", "id": "Filter", @@ -1823,6 +1879,10 @@ }, "type": "array" }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to return. Defaults to returning all properties. If this field is set and an entity has a property not referenced in the mask, it will be absent from LookupResponse.found.entity.properties. The entity's key is always returned." + }, "readOptions": { "$ref": "ReadOptions", "description": "The options for this lookup request." @@ -1885,6 +1945,10 @@ "$ref": "Entity", "description": "The entity to insert. The entity must not already exist. The entity key's final path element may be incomplete." }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to write in this mutation. None of the properties in the mask may have a reserved name, except for `__key__`. This field is ignored for `delete`. If the entity already exists, only properties referenced in the mask are updated, others are left untouched. Properties referenced in the mask but not in the entity are deleted." + }, "update": { "$ref": "Entity", "description": "The entity to update. The entity must already exist. Must have a complete key path." @@ -1970,6 +2034,24 @@ }, "type": "object" }, + "PlanSummary": { + "description": "Planning phase information for the query.", + "id": "PlanSummary", + "properties": { + "indexesUsed": { + "description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "Projection": { "description": "A representation of a property in a projection.", "id": "Projection", @@ -2024,6 +2106,20 @@ }, "type": "object" }, + "PropertyMask": { + "description": "The set of arbitrarily nested property paths used to restrict an operation to only a subset of properties in an entity.", + "id": "PropertyMask", + "properties": { + "paths": { + "description": "The paths to the properties covered by this mask. A path is a list of property names separated by dots (`.`), for example `foo.bar` means the property `bar` inside the entity property `foo` inside the entity associated with this path. If a property name contains a dot `.` or a backslash `\\`, then that name must be escaped. A path must not be empty, and may not reference a value inside an array value.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "PropertyOrder": { "description": "The desired order for a specific property.", "id": "PropertyOrder", @@ -2309,6 +2405,10 @@ "description": "The ID of the database against which to make the request. '(default)' is not allowed; please use empty string '' to refer the default database.", "type": "string" }, + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "gqlQuery": { "$ref": "GqlQuery", "description": "The GQL query to run. This query must be an aggregation query." @@ -2332,6 +2432,10 @@ "$ref": "AggregationResultBatch", "description": "A batch of aggregation results. Always present." }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "query": { "$ref": "AggregationQuery", "description": "The parsed form of the `GqlQuery` from the request, if it was set." @@ -2352,6 +2456,10 @@ "description": "The ID of the database against which to make the request. '(default)' is not allowed; please use empty string '' to refer the default database.", "type": "string" }, + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "gqlQuery": { "$ref": "GqlQuery", "description": "The GQL query to run. This query must be a non-aggregation query." @@ -2360,6 +2468,10 @@ "$ref": "PartitionId", "description": "Entities are partitioned into subsets, identified by a partition ID. Queries are scoped to a single partition. This partition ID is normalized with the standard default context partition ID." }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to return. This field must not be set for a projection query. See LookupRequest.property_mask." + }, "query": { "$ref": "Query", "description": "The query to run." @@ -2379,6 +2491,10 @@ "$ref": "QueryResultBatch", "description": "A batch of query results (always present)." }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "query": { "$ref": "Query", "description": "The parsed form of the `GqlQuery` from the request, if it was set." diff --git a/datastore/v1/datastore-gen.go b/datastore/v1/datastore-gen.go index 4eb8dcb16d5..a426abb52a6 100644 --- a/datastore/v1/datastore-gen.go +++ b/datastore/v1/datastore-gen.go @@ -839,6 +839,114 @@ func (s *EntityResult) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExecutionStats: Execution statistics for the query. +type ExecutionStats struct { + // DebugStats: Debugging statistics from the execution of the query. + // Note that the debugging stats are subject to change as Firestore + // evolves. It could include: { "indexes_entries_scanned": "1000", + // "documents_scanned": "20", "billing_details" : { + // "documents_billable": "20", "index_entries_billable": "1000", + // "min_query_cost": "0" } } + DebugStats googleapi.RawMessage `json:"debugStats,omitempty"` + + // ExecutionDuration: Total time to execute the query in the backend. + ExecutionDuration string `json:"executionDuration,omitempty"` + + // ReadOperations: Total billable read operations. + ReadOperations int64 `json:"readOperations,omitempty,string"` + + // ResultsReturned: Total number of results returned, including + // documents, projections, aggregation results, keys. + ResultsReturned int64 `json:"resultsReturned,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "DebugStats") 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. "DebugStats") 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 *ExecutionStats) MarshalJSON() ([]byte, error) { + type NoMethod ExecutionStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainMetrics: Explain metrics for the query. +type ExplainMetrics struct { + // ExecutionStats: Aggregated stats from the execution of the query. + // Only present when ExplainOptions.analyze is set to true. + ExecutionStats *ExecutionStats `json:"executionStats,omitempty"` + + // PlanSummary: Planning phase information for the query. + PlanSummary *PlanSummary `json:"planSummary,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExecutionStats") 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. "ExecutionStats") 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 *ExplainMetrics) MarshalJSON() ([]byte, error) { + type NoMethod ExplainMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainOptions: Explain options for the query. +type ExplainOptions struct { + // Analyze: Optional. Whether to execute this query. When false (the + // default), the query will be planned, returning only metrics from the + // planning stages. When true, the query will be planned and executed, + // returning the full query results along with both planning and + // execution stage metrics. + Analyze bool `json:"analyze,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Analyze") 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. "Analyze") 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 *ExplainOptions) MarshalJSON() ([]byte, error) { + type NoMethod ExplainOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Filter: A holder for any type of filter. type Filter struct { // CompositeFilter: A composite filter. @@ -2228,6 +2336,13 @@ type LookupRequest struct { // Keys: Required. Keys of entities to look up. Keys []*Key `json:"keys,omitempty"` + // PropertyMask: The properties to return. Defaults to returning all + // properties. If this field is set and an entity has a property not + // referenced in the mask, it will be absent from + // LookupResponse.found.entity.properties. The entity's key is always + // returned. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // ReadOptions: The options for this lookup request. ReadOptions *ReadOptions `json:"readOptions,omitempty"` @@ -2323,6 +2438,14 @@ type Mutation struct { // entity key's final path element may be incomplete. Insert *Entity `json:"insert,omitempty"` + // PropertyMask: The properties to write in this mutation. None of the + // properties in the mask may have a reserved name, except for + // `__key__`. This field is ignored for `delete`. If the entity already + // exists, only properties referenced in the mask are updated, others + // are left untouched. Properties referenced in the mask but not in the + // entity are deleted. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // Update: The entity to update. The entity must already exist. Must // have a complete key path. Update *Entity `json:"update,omitempty"` @@ -2504,6 +2627,37 @@ func (s *PathElement) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PlanSummary: Planning phase information for the query. +type PlanSummary struct { + // IndexesUsed: The indexes selected for the query. For example: [ + // {"query_scope": "Collection", "properties": "(foo ASC, __name__ + // ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, + // __name__ ASC)"} ] + IndexesUsed []googleapi.RawMessage `json:"indexesUsed,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IndexesUsed") 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. "IndexesUsed") 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 *PlanSummary) MarshalJSON() ([]byte, error) { + type NoMethod PlanSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Projection: A representation of a property in a projection. type Projection struct { // Property: The property to project. @@ -2593,6 +2747,40 @@ func (s *PropertyFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PropertyMask: The set of arbitrarily nested property paths used to +// restrict an operation to only a subset of properties in an entity. +type PropertyMask struct { + // Paths: The paths to the properties covered by this mask. A path is a + // list of property names separated by dots (`.`), for example `foo.bar` + // means the property `bar` inside the entity property `foo` inside the + // entity associated with this path. If a property name contains a dot + // `.` or a backslash `\`, then that name must be escaped. A path must + // not be empty, and may not reference a value inside an array value. + Paths []string `json:"paths,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Paths") 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. "Paths") 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 *PropertyMask) MarshalJSON() ([]byte, error) { + type NoMethod PropertyMask + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PropertyOrder: The desired order for a specific property. type PropertyOrder struct { // Direction: The direction to order by. Defaults to `ASCENDING`. @@ -3022,6 +3210,11 @@ type RunAggregationQueryRequest struct { // default database. DatabaseId string `json:"databaseId,omitempty"` + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // GqlQuery: The GQL query to run. This query must be an aggregation // query. GqlQuery *GqlQuery `json:"gqlQuery,omitempty"` @@ -3065,6 +3258,11 @@ type RunAggregationQueryResponse struct { // Batch: A batch of aggregation results. Always present. Batch *AggregationResultBatch `json:"batch,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunAggregationQueryRequest.explain_options is provided, and it is + // sent only once with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // Query: The parsed form of the `GqlQuery` from the request, if it was // set. Query *AggregationQuery `json:"query,omitempty"` @@ -3109,6 +3307,11 @@ type RunQueryRequest struct { // default database. DatabaseId string `json:"databaseId,omitempty"` + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // GqlQuery: The GQL query to run. This query must be a non-aggregation // query. GqlQuery *GqlQuery `json:"gqlQuery,omitempty"` @@ -3119,6 +3322,10 @@ type RunQueryRequest struct { // partition ID. PartitionId *PartitionId `json:"partitionId,omitempty"` + // PropertyMask: The properties to return. This field must not be set + // for a projection query. See LookupRequest.property_mask. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // Query: The query to run. Query *Query `json:"query,omitempty"` @@ -3153,6 +3360,11 @@ type RunQueryResponse struct { // Batch: A batch of query results (always present). Batch *QueryResultBatch `json:"batch,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunQueryRequest.explain_options is provided, and it is sent only once + // with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // Query: The parsed form of the `GqlQuery` from the request, if it was // set. Query *Query `json:"query,omitempty"` diff --git a/datastore/v1beta3/datastore-api.json b/datastore/v1beta3/datastore-api.json index 7e6ed92e48f..6852f58423f 100644 --- a/datastore/v1beta3/datastore-api.json +++ b/datastore/v1beta3/datastore-api.json @@ -336,7 +336,7 @@ } } }, - "revision": "20240215", + "revision": "20240317", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -653,6 +653,62 @@ }, "type": "object" }, + "ExecutionStats": { + "description": "Execution statistics for the query.", + "id": "ExecutionStats", + "properties": { + "debugStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", + "type": "object" + }, + "executionDuration": { + "description": "Total time to execute the query in the backend.", + "format": "google-duration", + "type": "string" + }, + "readOperations": { + "description": "Total billable read operations.", + "format": "int64", + "type": "string" + }, + "resultsReturned": { + "description": "Total number of results returned, including documents, projections, aggregation results, keys.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ExplainMetrics": { + "description": "Explain metrics for the query.", + "id": "ExplainMetrics", + "properties": { + "executionStats": { + "$ref": "ExecutionStats", + "description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." + }, + "planSummary": { + "$ref": "PlanSummary", + "description": "Planning phase information for the query." + } + }, + "type": "object" + }, + "ExplainOptions": { + "description": "Explain options for the query.", + "id": "ExplainOptions", + "properties": { + "analyze": { + "description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", + "type": "boolean" + } + }, + "type": "object" + }, "Filter": { "description": "A holder for any type of filter.", "id": "Filter", @@ -1278,6 +1334,10 @@ }, "type": "array" }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to return. Defaults to returning all properties. If this field is set and an entity has a property not referenced in the mask, it will be absent from LookupResponse.found.entity.properties. The entity's key is always returned." + }, "readOptions": { "$ref": "ReadOptions", "description": "The options for this lookup request." @@ -1335,6 +1395,10 @@ "$ref": "Entity", "description": "The entity to insert. The entity must not already exist. The entity key's final path element may be incomplete." }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to write in this mutation. None of the properties in the mask may have a reserved name, except for `__key__`. This field is ignored for `delete`. If the entity already exists, only properties referenced in the mask are updated, others are left untouched. Properties referenced in the mask but not in the entity are deleted." + }, "update": { "$ref": "Entity", "description": "The entity to update. The entity must already exist. Must have a complete key path." @@ -1416,6 +1480,24 @@ }, "type": "object" }, + "PlanSummary": { + "description": "Planning phase information for the query.", + "id": "PlanSummary", + "properties": { + "indexesUsed": { + "description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "Projection": { "description": "A representation of a property in a projection.", "id": "Projection", @@ -1470,6 +1552,20 @@ }, "type": "object" }, + "PropertyMask": { + "description": "The set of arbitrarily nested property paths used to restrict an operation to only a subset of properties in an entity.", + "id": "PropertyMask", + "properties": { + "paths": { + "description": "The paths to the properties covered by this mask. A path is a list of property names separated by dots (`.`), for example `foo.bar` means the property `bar` inside the entity property `foo` inside the entity associated with this path. If a property name contains a dot `.` or a backslash `\\`, then that name must be escaped. A path must not be empty, and may not reference a value inside an array value.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "PropertyOrder": { "description": "The desired order for a specific property.", "id": "PropertyOrder", @@ -1743,6 +1839,10 @@ "$ref": "AggregationQuery", "description": "The query to run." }, + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "gqlQuery": { "$ref": "GqlQuery", "description": "The GQL query to run. This query must be an aggregation query." @@ -1766,6 +1866,10 @@ "$ref": "AggregationResultBatch", "description": "A batch of aggregation results. Always present." }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "query": { "$ref": "AggregationQuery", "description": "The parsed form of the `GqlQuery` from the request, if it was set." @@ -1777,6 +1881,10 @@ "description": "The request for Datastore.RunQuery.", "id": "RunQueryRequest", "properties": { + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "gqlQuery": { "$ref": "GqlQuery", "description": "The GQL query to run. This query must be a non-aggregation query." @@ -1785,6 +1893,10 @@ "$ref": "PartitionId", "description": "Entities are partitioned into subsets, identified by a partition ID. Queries are scoped to a single partition. This partition ID is normalized with the standard default context partition ID." }, + "propertyMask": { + "$ref": "PropertyMask", + "description": "The properties to return. This field must not be set for a projection query. See LookupRequest.property_mask." + }, "query": { "$ref": "Query", "description": "The query to run." @@ -1804,6 +1916,10 @@ "$ref": "QueryResultBatch", "description": "A batch of query results (always present)." }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "query": { "$ref": "Query", "description": "The parsed form of the `GqlQuery` from the request, if it was set." diff --git a/datastore/v1beta3/datastore-gen.go b/datastore/v1beta3/datastore-gen.go index a430fd57b0d..51a8116d6e2 100644 --- a/datastore/v1beta3/datastore-gen.go +++ b/datastore/v1beta3/datastore-gen.go @@ -784,6 +784,114 @@ func (s *EntityResult) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExecutionStats: Execution statistics for the query. +type ExecutionStats struct { + // DebugStats: Debugging statistics from the execution of the query. + // Note that the debugging stats are subject to change as Firestore + // evolves. It could include: { "indexes_entries_scanned": "1000", + // "documents_scanned": "20", "billing_details" : { + // "documents_billable": "20", "index_entries_billable": "1000", + // "min_query_cost": "0" } } + DebugStats googleapi.RawMessage `json:"debugStats,omitempty"` + + // ExecutionDuration: Total time to execute the query in the backend. + ExecutionDuration string `json:"executionDuration,omitempty"` + + // ReadOperations: Total billable read operations. + ReadOperations int64 `json:"readOperations,omitempty,string"` + + // ResultsReturned: Total number of results returned, including + // documents, projections, aggregation results, keys. + ResultsReturned int64 `json:"resultsReturned,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "DebugStats") 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. "DebugStats") 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 *ExecutionStats) MarshalJSON() ([]byte, error) { + type NoMethod ExecutionStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainMetrics: Explain metrics for the query. +type ExplainMetrics struct { + // ExecutionStats: Aggregated stats from the execution of the query. + // Only present when ExplainOptions.analyze is set to true. + ExecutionStats *ExecutionStats `json:"executionStats,omitempty"` + + // PlanSummary: Planning phase information for the query. + PlanSummary *PlanSummary `json:"planSummary,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExecutionStats") 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. "ExecutionStats") 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 *ExplainMetrics) MarshalJSON() ([]byte, error) { + type NoMethod ExplainMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainOptions: Explain options for the query. +type ExplainOptions struct { + // Analyze: Optional. Whether to execute this query. When false (the + // default), the query will be planned, returning only metrics from the + // planning stages. When true, the query will be planned and executed, + // returning the full query results along with both planning and + // execution stage metrics. + Analyze bool `json:"analyze,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Analyze") 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. "Analyze") 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 *ExplainOptions) MarshalJSON() ([]byte, error) { + type NoMethod ExplainOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Filter: A holder for any type of filter. type Filter struct { // CompositeFilter: A composite filter. @@ -1820,6 +1928,13 @@ type LookupRequest struct { // Keys: Required. Keys of entities to look up. Keys []*Key `json:"keys,omitempty"` + // PropertyMask: The properties to return. Defaults to returning all + // properties. If this field is set and an entity has a property not + // referenced in the mask, it will be absent from + // LookupResponse.found.entity.properties. The entity's key is always + // returned. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // ReadOptions: The options for this lookup request. ReadOptions *ReadOptions `json:"readOptions,omitempty"` @@ -1910,6 +2025,14 @@ type Mutation struct { // entity key's final path element may be incomplete. Insert *Entity `json:"insert,omitempty"` + // PropertyMask: The properties to write in this mutation. None of the + // properties in the mask may have a reserved name, except for + // `__key__`. This field is ignored for `delete`. If the entity already + // exists, only properties referenced in the mask are updated, others + // are left untouched. Properties referenced in the mask but not in the + // entity are deleted. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // Update: The entity to update. The entity must already exist. Must // have a complete key path. Update *Entity `json:"update,omitempty"` @@ -2087,6 +2210,37 @@ func (s *PathElement) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PlanSummary: Planning phase information for the query. +type PlanSummary struct { + // IndexesUsed: The indexes selected for the query. For example: [ + // {"query_scope": "Collection", "properties": "(foo ASC, __name__ + // ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, + // __name__ ASC)"} ] + IndexesUsed []googleapi.RawMessage `json:"indexesUsed,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IndexesUsed") 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. "IndexesUsed") 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 *PlanSummary) MarshalJSON() ([]byte, error) { + type NoMethod PlanSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Projection: A representation of a property in a projection. type Projection struct { // Property: The property to project. @@ -2176,6 +2330,40 @@ func (s *PropertyFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PropertyMask: The set of arbitrarily nested property paths used to +// restrict an operation to only a subset of properties in an entity. +type PropertyMask struct { + // Paths: The paths to the properties covered by this mask. A path is a + // list of property names separated by dots (`.`), for example `foo.bar` + // means the property `bar` inside the entity property `foo` inside the + // entity associated with this path. If a property name contains a dot + // `.` or a backslash `\`, then that name must be escaped. A path must + // not be empty, and may not reference a value inside an array value. + Paths []string `json:"paths,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Paths") 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. "Paths") 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 *PropertyMask) MarshalJSON() ([]byte, error) { + type NoMethod PropertyMask + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PropertyOrder: The desired order for a specific property. type PropertyOrder struct { // Direction: The direction to order by. Defaults to `ASCENDING`. @@ -2589,6 +2777,11 @@ type RunAggregationQueryRequest struct { // AggregationQuery: The query to run. AggregationQuery *AggregationQuery `json:"aggregationQuery,omitempty"` + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // GqlQuery: The GQL query to run. This query must be an aggregation // query. GqlQuery *GqlQuery `json:"gqlQuery,omitempty"` @@ -2632,6 +2825,11 @@ type RunAggregationQueryResponse struct { // Batch: A batch of aggregation results. Always present. Batch *AggregationResultBatch `json:"batch,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunAggregationQueryRequest.explain_options is provided, and it is + // sent only once with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // Query: The parsed form of the `GqlQuery` from the request, if it was // set. Query *AggregationQuery `json:"query,omitempty"` @@ -2665,6 +2863,11 @@ func (s *RunAggregationQueryResponse) MarshalJSON() ([]byte, error) { // RunQueryRequest: The request for Datastore.RunQuery. type RunQueryRequest struct { + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // GqlQuery: The GQL query to run. This query must be a non-aggregation // query. GqlQuery *GqlQuery `json:"gqlQuery,omitempty"` @@ -2675,13 +2878,17 @@ type RunQueryRequest struct { // partition ID. PartitionId *PartitionId `json:"partitionId,omitempty"` + // PropertyMask: The properties to return. This field must not be set + // for a projection query. See LookupRequest.property_mask. + PropertyMask *PropertyMask `json:"propertyMask,omitempty"` + // Query: The query to run. Query *Query `json:"query,omitempty"` // ReadOptions: The options for this query. ReadOptions *ReadOptions `json:"readOptions,omitempty"` - // ForceSendFields is a list of field names (e.g. "GqlQuery") to + // ForceSendFields is a list of field names (e.g. "ExplainOptions") 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 @@ -2689,12 +2896,13 @@ type RunQueryRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "GqlQuery") 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 is a list of field names (e.g. "ExplainOptions") 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:"-"` } @@ -2709,6 +2917,11 @@ type RunQueryResponse struct { // Batch: A batch of query results (always present). Batch *QueryResultBatch `json:"batch,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunQueryRequest.explain_options is provided, and it is sent only once + // with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // Query: The parsed form of the `GqlQuery` from the request, if it was // set. Query *Query `json:"query,omitempty"` diff --git a/firestore/v1/firestore-api.json b/firestore/v1/firestore-api.json index ab8d5bd69a1..9791c7df5af 100644 --- a/firestore/v1/firestore-api.json +++ b/firestore/v1/firestore-api.json @@ -394,7 +394,7 @@ ], "parameters": { "name": { - "description": "Required. The name of backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", + "description": "Required. The name of the backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", "location": "path", "pattern": "^projects/[^/]+/databases/[^/]+/backupSchedules/[^/]+$", "required": true, @@ -1672,7 +1672,7 @@ } } }, - "revision": "20240307", + "revision": "20240317", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2158,6 +2158,36 @@ "properties": {}, "type": "object" }, + "ExecutionStats": { + "description": "Execution statistics for the query.", + "id": "ExecutionStats", + "properties": { + "debugStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", + "type": "object" + }, + "executionDuration": { + "description": "Total time to execute the query in the backend.", + "format": "google-duration", + "type": "string" + }, + "readOperations": { + "description": "Total billable read operations.", + "format": "int64", + "type": "string" + }, + "resultsReturned": { + "description": "Total number of results returned, including documents, projections, aggregation results, keys.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "ExistenceFilter": { "description": "A digest of all the documents that match a given target.", "id": "ExistenceFilter", @@ -2179,6 +2209,32 @@ }, "type": "object" }, + "ExplainMetrics": { + "description": "Explain metrics for the query.", + "id": "ExplainMetrics", + "properties": { + "executionStats": { + "$ref": "ExecutionStats", + "description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." + }, + "planSummary": { + "$ref": "PlanSummary", + "description": "Planning phase information for the query." + } + }, + "type": "object" + }, + "ExplainOptions": { + "description": "Explain options for the query.", + "id": "ExplainOptions", + "properties": { + "analyze": { + "description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", + "type": "boolean" + } + }, + "type": "object" + }, "FieldFilter": { "description": "A filter on a specific field.", "id": "FieldFilter", @@ -2416,7 +2472,7 @@ "type": "object" }, "GoogleFirestoreAdminV1DailyRecurrence": { - "description": "Represent a recurring schedule that runs at a specific time every day. The time zone is UTC.", + "description": "Represents a recurring schedule that runs at a specific time every day. The time zone is UTC.", "id": "GoogleFirestoreAdminV1DailyRecurrence", "properties": {}, "type": "object" @@ -3705,6 +3761,24 @@ }, "type": "object" }, + "PlanSummary": { + "description": "Planning phase information for the query.", + "id": "PlanSummary", + "properties": { + "indexesUsed": { + "description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "Precondition": { "description": "A precondition on a document, used for conditional operations.", "id": "Precondition", @@ -3790,6 +3864,10 @@ "description": "The request for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryRequest", "properties": { + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream." @@ -3815,6 +3893,10 @@ "description": "The response for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryResponse", "properties": { + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "readTime": { "description": "The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", @@ -3836,6 +3918,10 @@ "description": "The request for Firestore.RunQuery.", "id": "RunQueryRequest", "properties": { + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction and reads the documents. Defaults to a read-only transaction. The new transaction ID will be returned as the first response in the stream." @@ -3869,6 +3955,10 @@ "description": "If present, Firestore has completely finished the request and no more documents will be returned.", "type": "boolean" }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "readTime": { "description": "The time at which the document was read. This may be monotonically increasing; in this case, the previous documents in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", diff --git a/firestore/v1/firestore-gen.go b/firestore/v1/firestore-gen.go index 512562e8712..b018625859f 100644 --- a/firestore/v1/firestore-gen.go +++ b/firestore/v1/firestore-gen.go @@ -1250,6 +1250,49 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// ExecutionStats: Execution statistics for the query. +type ExecutionStats struct { + // DebugStats: Debugging statistics from the execution of the query. + // Note that the debugging stats are subject to change as Firestore + // evolves. It could include: { "indexes_entries_scanned": "1000", + // "documents_scanned": "20", "billing_details" : { + // "documents_billable": "20", "index_entries_billable": "1000", + // "min_query_cost": "0" } } + DebugStats googleapi.RawMessage `json:"debugStats,omitempty"` + + // ExecutionDuration: Total time to execute the query in the backend. + ExecutionDuration string `json:"executionDuration,omitempty"` + + // ReadOperations: Total billable read operations. + ReadOperations int64 `json:"readOperations,omitempty,string"` + + // ResultsReturned: Total number of results returned, including + // documents, projections, aggregation results, keys. + ResultsReturned int64 `json:"resultsReturned,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "DebugStats") 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. "DebugStats") 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 *ExecutionStats) MarshalJSON() ([]byte, error) { + type NoMethod ExecutionStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ExistenceFilter: A digest of all the documents that match a given // target. type ExistenceFilter struct { @@ -1301,6 +1344,71 @@ func (s *ExistenceFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExplainMetrics: Explain metrics for the query. +type ExplainMetrics struct { + // ExecutionStats: Aggregated stats from the execution of the query. + // Only present when ExplainOptions.analyze is set to true. + ExecutionStats *ExecutionStats `json:"executionStats,omitempty"` + + // PlanSummary: Planning phase information for the query. + PlanSummary *PlanSummary `json:"planSummary,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExecutionStats") 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. "ExecutionStats") 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 *ExplainMetrics) MarshalJSON() ([]byte, error) { + type NoMethod ExplainMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainOptions: Explain options for the query. +type ExplainOptions struct { + // Analyze: Optional. Whether to execute this query. When false (the + // default), the query will be planned, returning only metrics from the + // planning stages. When true, the query will be planned and executed, + // returning the full query results along with both planning and + // execution stage metrics. + Analyze bool `json:"analyze,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Analyze") 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. "Analyze") 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 *ExplainOptions) MarshalJSON() ([]byte, error) { + type NoMethod ExplainOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FieldFilter: A filter on a specific field. type FieldFilter struct { // Field: The field to filter by. @@ -1710,8 +1818,9 @@ func (s *GoogleFirestoreAdminV1CmekConfig) MarshalJSON() ([]byte, error) { type GoogleFirestoreAdminV1CreateDatabaseMetadata struct { } -// GoogleFirestoreAdminV1DailyRecurrence: Represent a recurring schedule -// that runs at a specific time every day. The time zone is UTC. +// GoogleFirestoreAdminV1DailyRecurrence: Represents a recurring +// schedule that runs at a specific time every day. The time zone is +// UTC. type GoogleFirestoreAdminV1DailyRecurrence struct { } @@ -3765,6 +3874,37 @@ func (s *PartitionQueryResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PlanSummary: Planning phase information for the query. +type PlanSummary struct { + // IndexesUsed: The indexes selected for the query. For example: [ + // {"query_scope": "Collection", "properties": "(foo ASC, __name__ + // ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, + // __name__ ASC)"} ] + IndexesUsed []googleapi.RawMessage `json:"indexesUsed,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IndexesUsed") 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. "IndexesUsed") 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 *PlanSummary) MarshalJSON() ([]byte, error) { + type NoMethod PlanSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Precondition: A precondition on a document, used for conditional // operations. type Precondition struct { @@ -3959,6 +4099,11 @@ func (s *RollbackRequest) MarshalJSON() ([]byte, error) { // RunAggregationQueryRequest: The request for // Firestore.RunAggregationQuery. type RunAggregationQueryRequest struct { + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // NewTransaction: Starts a new transaction as part of the query, // defaulting to read-only. The new transaction ID will be returned as // the first response in the stream. @@ -3978,7 +4123,7 @@ type RunAggregationQueryRequest struct { // the query in. Transaction string `json:"transaction,omitempty"` - // ForceSendFields is a list of field names (e.g. "NewTransaction") to + // ForceSendFields is a list of field names (e.g. "ExplainOptions") 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 @@ -3986,7 +4131,7 @@ type RunAggregationQueryRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NewTransaction") to + // NullFields is a list of field names (e.g. "ExplainOptions") 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 @@ -4005,6 +4150,11 @@ func (s *RunAggregationQueryRequest) MarshalJSON() ([]byte, error) { // RunAggregationQueryResponse: The response for // Firestore.RunAggregationQuery. type RunAggregationQueryResponse struct { + // ExplainMetrics: Query explain metrics. This is only present when the + // RunAggregationQueryRequest.explain_options is provided, and it is + // sent only once with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // ReadTime: The time at which the aggregate result was computed. This // is always monotonically increasing; in this case, the previous // AggregationResult in the result stream are guaranteed not to have @@ -4026,7 +4176,7 @@ type RunAggregationQueryResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ReadTime") to + // ForceSendFields is a list of field names (e.g. "ExplainMetrics") 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 @@ -4034,12 +4184,13 @@ type RunAggregationQueryResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ReadTime") 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 is a list of field names (e.g. "ExplainMetrics") 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:"-"` } @@ -4051,6 +4202,11 @@ func (s *RunAggregationQueryResponse) MarshalJSON() ([]byte, error) { // RunQueryRequest: The request for Firestore.RunQuery. type RunQueryRequest struct { + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // NewTransaction: Starts a new transaction and reads the documents. // Defaults to a read-only transaction. The new transaction ID will be // returned as the first response in the stream. @@ -4069,7 +4225,7 @@ type RunQueryRequest struct { // value here is the opaque transaction ID to execute the query in. Transaction string `json:"transaction,omitempty"` - // ForceSendFields is a list of field names (e.g. "NewTransaction") to + // ForceSendFields is a list of field names (e.g. "ExplainOptions") 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 @@ -4077,7 +4233,7 @@ type RunQueryRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NewTransaction") to + // NullFields is a list of field names (e.g. "ExplainOptions") 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 @@ -4102,6 +4258,11 @@ type RunQueryResponse struct { // no more documents will be returned. Done bool `json:"done,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunQueryRequest.explain_options is provided, and it is sent only once + // with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // ReadTime: The time at which the document was read. This may be // monotonically increasing; in this case, the previous documents in the // result stream are guaranteed not to have changed between their @@ -6220,7 +6381,7 @@ type ProjectsDatabasesBackupSchedulesDeleteCall struct { // Delete: Deletes a backup schedule. // -// - name: The name of backup schedule. Format +// - name: The name of the backup schedule. Format // `projects/{project}/databases/{database}/backupSchedules/{backup_sch // edule}`. func (r *ProjectsDatabasesBackupSchedulesService) Delete(name string) *ProjectsDatabasesBackupSchedulesDeleteCall { @@ -6324,7 +6485,7 @@ func (c *ProjectsDatabasesBackupSchedulesDeleteCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "name": { - // "description": "Required. The name of backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", + // "description": "Required. The name of the backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", // "location": "path", // "pattern": "^projects/[^/]+/databases/[^/]+/backupSchedules/[^/]+$", // "required": true, diff --git a/firestore/v1beta1/firestore-api.json b/firestore/v1beta1/firestore-api.json index c672e8d3b02..8f657f4a016 100644 --- a/firestore/v1beta1/firestore-api.json +++ b/firestore/v1beta1/firestore-api.json @@ -950,7 +950,7 @@ } } }, - "revision": "20240215", + "revision": "20240317", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -1436,6 +1436,36 @@ "properties": {}, "type": "object" }, + "ExecutionStats": { + "description": "Execution statistics for the query.", + "id": "ExecutionStats", + "properties": { + "debugStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", + "type": "object" + }, + "executionDuration": { + "description": "Total time to execute the query in the backend.", + "format": "google-duration", + "type": "string" + }, + "readOperations": { + "description": "Total billable read operations.", + "format": "int64", + "type": "string" + }, + "resultsReturned": { + "description": "Total number of results returned, including documents, projections, aggregation results, keys.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "ExistenceFilter": { "description": "A digest of all the documents that match a given target.", "id": "ExistenceFilter", @@ -1457,6 +1487,32 @@ }, "type": "object" }, + "ExplainMetrics": { + "description": "Explain metrics for the query.", + "id": "ExplainMetrics", + "properties": { + "executionStats": { + "$ref": "ExecutionStats", + "description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." + }, + "planSummary": { + "$ref": "PlanSummary", + "description": "Planning phase information for the query." + } + }, + "type": "object" + }, + "ExplainOptions": { + "description": "Explain options for the query.", + "id": "ExplainOptions", + "properties": { + "analyze": { + "description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", + "type": "boolean" + } + }, + "type": "object" + }, "FieldFilter": { "description": "A filter on a specific field.", "id": "FieldFilter", @@ -2223,6 +2279,24 @@ }, "type": "object" }, + "PlanSummary": { + "description": "Planning phase information for the query.", + "id": "PlanSummary", + "properties": { + "indexesUsed": { + "description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "Precondition": { "description": "A precondition on a document, used for conditional operations.", "id": "Precondition", @@ -2308,6 +2382,10 @@ "description": "The request for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryRequest", "properties": { + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream." @@ -2333,6 +2411,10 @@ "description": "The response for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryResponse", "properties": { + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "readTime": { "description": "The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", @@ -2354,6 +2436,10 @@ "description": "The request for Firestore.RunQuery.", "id": "RunQueryRequest", "properties": { + "explainOptions": { + "$ref": "ExplainOptions", + "description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." + }, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction and reads the documents. Defaults to a read-only transaction. The new transaction ID will be returned as the first response in the stream." @@ -2387,6 +2473,10 @@ "description": "If present, Firestore has completely finished the request and no more documents will be returned.", "type": "boolean" }, + "explainMetrics": { + "$ref": "ExplainMetrics", + "description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." + }, "readTime": { "description": "The time at which the document was read. This may be monotonically increasing; in this case, the previous documents in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", diff --git a/firestore/v1beta1/firestore-gen.go b/firestore/v1beta1/firestore-gen.go index 1352bf54e22..1648887b71d 100644 --- a/firestore/v1beta1/firestore-gen.go +++ b/firestore/v1beta1/firestore-gen.go @@ -1178,6 +1178,49 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// ExecutionStats: Execution statistics for the query. +type ExecutionStats struct { + // DebugStats: Debugging statistics from the execution of the query. + // Note that the debugging stats are subject to change as Firestore + // evolves. It could include: { "indexes_entries_scanned": "1000", + // "documents_scanned": "20", "billing_details" : { + // "documents_billable": "20", "index_entries_billable": "1000", + // "min_query_cost": "0" } } + DebugStats googleapi.RawMessage `json:"debugStats,omitempty"` + + // ExecutionDuration: Total time to execute the query in the backend. + ExecutionDuration string `json:"executionDuration,omitempty"` + + // ReadOperations: Total billable read operations. + ReadOperations int64 `json:"readOperations,omitempty,string"` + + // ResultsReturned: Total number of results returned, including + // documents, projections, aggregation results, keys. + ResultsReturned int64 `json:"resultsReturned,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "DebugStats") 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. "DebugStats") 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 *ExecutionStats) MarshalJSON() ([]byte, error) { + type NoMethod ExecutionStats + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ExistenceFilter: A digest of all the documents that match a given // target. type ExistenceFilter struct { @@ -1229,6 +1272,71 @@ func (s *ExistenceFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExplainMetrics: Explain metrics for the query. +type ExplainMetrics struct { + // ExecutionStats: Aggregated stats from the execution of the query. + // Only present when ExplainOptions.analyze is set to true. + ExecutionStats *ExecutionStats `json:"executionStats,omitempty"` + + // PlanSummary: Planning phase information for the query. + PlanSummary *PlanSummary `json:"planSummary,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExecutionStats") 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. "ExecutionStats") 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 *ExplainMetrics) MarshalJSON() ([]byte, error) { + type NoMethod ExplainMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExplainOptions: Explain options for the query. +type ExplainOptions struct { + // Analyze: Optional. Whether to execute this query. When false (the + // default), the query will be planned, returning only metrics from the + // planning stages. When true, the query will be planned and executed, + // returning the full query results along with both planning and + // execution stage metrics. + Analyze bool `json:"analyze,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Analyze") 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. "Analyze") 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 *ExplainOptions) MarshalJSON() ([]byte, error) { + type NoMethod ExplainOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FieldFilter: A filter on a specific field. type FieldFilter struct { // Field: The field to filter by. @@ -2520,6 +2628,37 @@ func (s *PartitionQueryResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PlanSummary: Planning phase information for the query. +type PlanSummary struct { + // IndexesUsed: The indexes selected for the query. For example: [ + // {"query_scope": "Collection", "properties": "(foo ASC, __name__ + // ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, + // __name__ ASC)"} ] + IndexesUsed []googleapi.RawMessage `json:"indexesUsed,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IndexesUsed") 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. "IndexesUsed") 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 *PlanSummary) MarshalJSON() ([]byte, error) { + type NoMethod PlanSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Precondition: A precondition on a document, used for conditional // operations. type Precondition struct { @@ -2714,6 +2853,11 @@ func (s *RollbackRequest) MarshalJSON() ([]byte, error) { // RunAggregationQueryRequest: The request for // Firestore.RunAggregationQuery. type RunAggregationQueryRequest struct { + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // NewTransaction: Starts a new transaction as part of the query, // defaulting to read-only. The new transaction ID will be returned as // the first response in the stream. @@ -2733,7 +2877,7 @@ type RunAggregationQueryRequest struct { // the query in. Transaction string `json:"transaction,omitempty"` - // ForceSendFields is a list of field names (e.g. "NewTransaction") to + // ForceSendFields is a list of field names (e.g. "ExplainOptions") 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 @@ -2741,7 +2885,7 @@ type RunAggregationQueryRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NewTransaction") to + // NullFields is a list of field names (e.g. "ExplainOptions") 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 @@ -2760,6 +2904,11 @@ func (s *RunAggregationQueryRequest) MarshalJSON() ([]byte, error) { // RunAggregationQueryResponse: The response for // Firestore.RunAggregationQuery. type RunAggregationQueryResponse struct { + // ExplainMetrics: Query explain metrics. This is only present when the + // RunAggregationQueryRequest.explain_options is provided, and it is + // sent only once with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // ReadTime: The time at which the aggregate result was computed. This // is always monotonically increasing; in this case, the previous // AggregationResult in the result stream are guaranteed not to have @@ -2781,7 +2930,7 @@ type RunAggregationQueryResponse struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ReadTime") to + // ForceSendFields is a list of field names (e.g. "ExplainMetrics") 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 @@ -2789,12 +2938,13 @@ type RunAggregationQueryResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ReadTime") 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 is a list of field names (e.g. "ExplainMetrics") 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:"-"` } @@ -2806,6 +2956,11 @@ func (s *RunAggregationQueryResponse) MarshalJSON() ([]byte, error) { // RunQueryRequest: The request for Firestore.RunQuery. type RunQueryRequest struct { + // ExplainOptions: Optional. Explain options for the query. If set, + // additional query statistics will be returned. If not, only query + // results will be returned. + ExplainOptions *ExplainOptions `json:"explainOptions,omitempty"` + // NewTransaction: Starts a new transaction and reads the documents. // Defaults to a read-only transaction. The new transaction ID will be // returned as the first response in the stream. @@ -2824,7 +2979,7 @@ type RunQueryRequest struct { // value here is the opaque transaction ID to execute the query in. Transaction string `json:"transaction,omitempty"` - // ForceSendFields is a list of field names (e.g. "NewTransaction") to + // ForceSendFields is a list of field names (e.g. "ExplainOptions") 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 @@ -2832,7 +2987,7 @@ type RunQueryRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NewTransaction") to + // NullFields is a list of field names (e.g. "ExplainOptions") 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 @@ -2857,6 +3012,11 @@ type RunQueryResponse struct { // no more documents will be returned. Done bool `json:"done,omitempty"` + // ExplainMetrics: Query explain metrics. This is only present when the + // RunQueryRequest.explain_options is provided, and it is sent only once + // with the last response in the stream. + ExplainMetrics *ExplainMetrics `json:"explainMetrics,omitempty"` + // ReadTime: The time at which the document was read. This may be // monotonically increasing; in this case, the previous documents in the // result stream are guaranteed not to have changed between their diff --git a/gkebackup/v1/gkebackup-api.json b/gkebackup/v1/gkebackup-api.json index 10eddc55392..9374311948c 100644 --- a/gkebackup/v1/gkebackup-api.json +++ b/gkebackup/v1/gkebackup-api.json @@ -1688,7 +1688,7 @@ } } }, - "revision": "20240131", + "revision": "20240313", "rootUrl": "https://gkebackup.googleapis.com/", "schemas": { "AuditConfig": { @@ -1740,7 +1740,7 @@ "type": "object" }, "Backup": { - "description": "Represents a request to perform a single point-in-time capture of some portion of the state of a GKE cluster, the record of the backup operation itself, and an anchor for the underlying artifacts that comprise the Backup (the config backup and VolumeBackups). Next id: 29", + "description": "Represents a request to perform a single point-in-time capture of some portion of the state of a GKE cluster, the record of the backup operation itself, and an anchor for the underlying artifacts that comprise the Backup (the config backup and VolumeBackups).", "id": "Backup", "properties": { "allNamespaces": { @@ -2590,7 +2590,7 @@ "type": "object" }, "Restore": { - "description": "Represents both a request to Restore some portion of a Backup into a target GKE cluster and a record of the restore operation itself. Next id: 20", + "description": "Represents both a request to Restore some portion of a Backup into a target GKE cluster and a record of the restore operation itself.", "id": "Restore", "properties": { "backup": { @@ -2705,7 +2705,7 @@ "type": "object" }, "RestoreConfig": { - "description": "Configuration of a restore. Next id: 14", + "description": "Configuration of a restore.", "id": "RestoreConfig", "properties": { "allNamespaces": { @@ -2794,7 +2794,7 @@ "type": "object" }, "RestorePlan": { - "description": "The configuration of a potential series of Restore operations to be performed against Backups belong to a particular BackupPlan. Next id: 13", + "description": "The configuration of a potential series of Restore operations to be performed against Backups belong to a particular BackupPlan.", "id": "RestorePlan", "properties": { "backupPlan": { @@ -3051,7 +3051,7 @@ "type": "object" }, "VolumeBackup": { - "description": "Represents the backup of a specific persistent volume as a component of a Backup - both the record of the operation and a pointer to the underlying storage-specific artifacts. Next id: 14", + "description": "Represents the backup of a specific persistent volume as a component of a Backup - both the record of the operation and a pointer to the underlying storage-specific artifacts.", "id": "VolumeBackup", "properties": { "completeTime": { @@ -3154,7 +3154,7 @@ "type": "object" }, "VolumeRestore": { - "description": "Represents the operation of restoring a volume from a VolumeBackup. Next id: 13", + "description": "Represents the operation of restoring a volume from a VolumeBackup.", "id": "VolumeRestore", "properties": { "completeTime": { diff --git a/gkebackup/v1/gkebackup-gen.go b/gkebackup/v1/gkebackup-gen.go index 6d3672cea66..25e029007f2 100644 --- a/gkebackup/v1/gkebackup-gen.go +++ b/gkebackup/v1/gkebackup-gen.go @@ -361,7 +361,7 @@ func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { // capture of some portion of the state of a GKE cluster, the record of // the backup operation itself, and an anchor for the underlying // artifacts that comprise the Backup (the config backup and -// VolumeBackups). Next id: 29 +// VolumeBackups). type Backup struct { // AllNamespaces: Output only. If True, all namespaces were included in // the Backup. @@ -1823,7 +1823,7 @@ func (s *ResourceFilter) MarshalJSON() ([]byte, error) { // Restore: Represents both a request to Restore some portion of a // Backup into a target GKE cluster and a record of the restore -// operation itself. Next id: 20 +// operation itself. type Restore struct { // Backup: Required. Immutable. A reference to the Backup used as the // source from which this Restore will restore. Note that this Backup @@ -1942,7 +1942,7 @@ func (s *Restore) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// RestoreConfig: Configuration of a restore. Next id: 14 +// RestoreConfig: Configuration of a restore. type RestoreConfig struct { // AllNamespaces: Restore all namespaced resources in the Backup if set // to "True". Specifying this field to "False" is an error. @@ -2076,7 +2076,7 @@ func (s *RestoreConfig) MarshalJSON() ([]byte, error) { // RestorePlan: The configuration of a potential series of Restore // operations to be performed against Backups belong to a particular -// BackupPlan. Next id: 13 +// BackupPlan. type RestorePlan struct { // BackupPlan: Required. Immutable. A reference to the BackupPlan from // which Backups may be used as the source for Restores created via this @@ -2557,7 +2557,7 @@ func (s *TransformationRuleAction) MarshalJSON() ([]byte, error) { // VolumeBackup: Represents the backup of a specific persistent volume // as a component of a Backup - both the record of the operation and a -// pointer to the underlying storage-specific artifacts. Next id: 14 +// pointer to the underlying storage-specific artifacts. type VolumeBackup struct { // CompleteTime: Output only. The timestamp when the associated // underlying volume backup operation completed. @@ -2667,7 +2667,7 @@ func (s *VolumeBackup) MarshalJSON() ([]byte, error) { } // VolumeRestore: Represents the operation of restoring a volume from a -// VolumeBackup. Next id: 13 +// VolumeBackup. type VolumeRestore struct { // CompleteTime: Output only. The timestamp when the associated // underlying volume restoration completed. diff --git a/notebooks/v1/notebooks-api.json b/notebooks/v1/notebooks-api.json index 5aa05e311e7..30baebd2cae 100644 --- a/notebooks/v1/notebooks-api.json +++ b/notebooks/v1/notebooks-api.json @@ -2008,7 +2008,7 @@ } } }, - "revision": "20240307", + "revision": "20240314", "rootUrl": "https://notebooks.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2031,6 +2031,7 @@ "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", + "NVIDIA_A100_80GB", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS", @@ -2046,6 +2047,7 @@ "Accelerator type is Nvidia Tesla T4.", "Accelerator type is Nvidia Tesla A100.", "Accelerator type is Nvidia Tesla L4.", + "Accelerator type is Nvidia Tesla A100 80GB.", "Accelerator type is NVIDIA Tesla T4 Virtual Workstations.", "Accelerator type is NVIDIA Tesla P100 Virtual Workstations.", "Accelerator type is NVIDIA Tesla P4 Virtual Workstations.", @@ -4052,6 +4054,7 @@ "NVIDIA_TESLA_T4", "NVIDIA_TESLA_A100", "NVIDIA_L4", + "NVIDIA_A100_80GB", "NVIDIA_TESLA_T4_VWS", "NVIDIA_TESLA_P100_VWS", "NVIDIA_TESLA_P4_VWS", @@ -4067,6 +4070,7 @@ "Accelerator type is Nvidia Tesla T4.", "Accelerator type is Nvidia Tesla A100.", "Accelerator type is Nvidia Tesla L4.", + "Accelerator type is Nvidia Tesla A100 80GB.", "Accelerator type is NVIDIA Tesla T4 Virtual Workstations.", "Accelerator type is NVIDIA Tesla P100 Virtual Workstations.", "Accelerator type is NVIDIA Tesla P4 Virtual Workstations.", diff --git a/notebooks/v1/notebooks-gen.go b/notebooks/v1/notebooks-gen.go index 6d1a33c8701..82b23b13605 100644 --- a/notebooks/v1/notebooks-gen.go +++ b/notebooks/v1/notebooks-gen.go @@ -268,6 +268,7 @@ type AcceleratorConfig struct { // "NVIDIA_TESLA_T4" - Accelerator type is Nvidia Tesla T4. // "NVIDIA_TESLA_A100" - Accelerator type is Nvidia Tesla A100. // "NVIDIA_L4" - Accelerator type is Nvidia Tesla L4. + // "NVIDIA_A100_80GB" - Accelerator type is Nvidia Tesla A100 80GB. // "NVIDIA_TESLA_T4_VWS" - Accelerator type is NVIDIA Tesla T4 Virtual // Workstations. // "NVIDIA_TESLA_P100_VWS" - Accelerator type is NVIDIA Tesla P100 @@ -3360,6 +3361,7 @@ type SetInstanceAcceleratorRequest struct { // "NVIDIA_TESLA_T4" - Accelerator type is Nvidia Tesla T4. // "NVIDIA_TESLA_A100" - Accelerator type is Nvidia Tesla A100. // "NVIDIA_L4" - Accelerator type is Nvidia Tesla L4. + // "NVIDIA_A100_80GB" - Accelerator type is Nvidia Tesla A100 80GB. // "NVIDIA_TESLA_T4_VWS" - Accelerator type is NVIDIA Tesla T4 Virtual // Workstations. // "NVIDIA_TESLA_P100_VWS" - Accelerator type is NVIDIA Tesla P100 diff --git a/privateca/v1/privateca-api.json b/privateca/v1/privateca-api.json index 4bc8663cf94..65ae3cc4e83 100644 --- a/privateca/v1/privateca-api.json +++ b/privateca/v1/privateca-api.json @@ -1605,7 +1605,7 @@ } } }, - "revision": "20240221", + "revision": "20240313", "rootUrl": "https://privateca.googleapis.com/", "schemas": { "AccessUrls": { @@ -2059,7 +2059,7 @@ "id": "CertificateConfigKeyId", "properties": { "keyId": { - "description": "Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.", + "description": "Required. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.", "type": "string" } }, diff --git a/privateca/v1/privateca-gen.go b/privateca/v1/privateca-gen.go index e2dfba4e7ec..d6c8b96bb36 100644 --- a/privateca/v1/privateca-gen.go +++ b/privateca/v1/privateca-gen.go @@ -1003,7 +1003,7 @@ func (s *CertificateConfig) MarshalJSON() ([]byte, error) { // CertificateConfigKeyId: A KeyId identifies a specific public key, // usually by hashing the public key. type CertificateConfigKeyId struct { - // KeyId: Optional. The value of this KeyId encoded in lowercase + // KeyId: Required. The value of this KeyId encoded in lowercase // hexadecimal. This is most likely the 160 bit SHA-1 hash of the public // key. KeyId string `json:"keyId,omitempty"` diff --git a/sqladmin/v1/sqladmin-api.json b/sqladmin/v1/sqladmin-api.json index 3a29c429291..8f5392ea750 100644 --- a/sqladmin/v1/sqladmin-api.json +++ b/sqladmin/v1/sqladmin-api.json @@ -2267,7 +2267,7 @@ } } }, - "revision": "20240304", + "revision": "20240317", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2403,6 +2403,25 @@ "description": "The number of days of transaction logs we retain for point in time restore, from 1-7.", "format": "int32", "type": "integer" + }, + "transactionalLogStorageState": { + "description": "Output only. This value contains the storage location of transactional logs for the database for point-in-time recovery.", + "enum": [ + "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED", + "DISK", + "SWITCHING_TO_CLOUD_STORAGE", + "SWITCHED_TO_CLOUD_STORAGE", + "CLOUD_STORAGE" + ], + "enumDescriptions": [ + "Unspecified.", + "The transaction logs for the instance are stored on a data disk.", + "The transaction logs for the instance are switching from being stored on a data disk to being stored in Cloud Storage.", + "The transaction logs for the instance are now stored in Cloud Storage. Previously, they were stored on a data disk.", + "The transaction logs for the instance are stored in Cloud Storage." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -3163,6 +3182,10 @@ "description": "The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. WARNING: Changing this might restart the instance.", "type": "string" }, + "geminiConfig": { + "$ref": "GeminiInstanceConfig", + "description": "Gemini configuration." + }, "instanceType": { "description": "The instance type.", "enum": [ @@ -3251,6 +3274,10 @@ }, "type": "array" }, + "replicationCluster": { + "$ref": "ReplicationCluster", + "description": "Optional. The pair of a primary instance and disaster recovery (DR) replica. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance has regional failure." + }, "rootPassword": { "description": "Initial root password. Use only on creation. You must set root passwords before you can connect to PostgreSQL instances.", "type": "string" @@ -3907,6 +3934,43 @@ }, "type": "object" }, + "GeminiInstanceConfig": { + "description": "Gemini configuration.", + "id": "GeminiInstanceConfig", + "properties": { + "activeQueryEnabled": { + "description": "Output only. Whether active query is enabled.", + "readOnly": true, + "type": "boolean" + }, + "entitled": { + "description": "Output only. Whether gemini is enabled.", + "readOnly": true, + "type": "boolean" + }, + "flagRecommenderEnabled": { + "description": "Output only. Whether flag recommender is enabled.", + "readOnly": true, + "type": "boolean" + }, + "googleVacuumMgmtEnabled": { + "description": "Output only. Whether vacuum management is enabled.", + "readOnly": true, + "type": "boolean" + }, + "indexAdvisorEnabled": { + "description": "Output only. Whether index advisor is enabled.", + "readOnly": true, + "type": "boolean" + }, + "oomSessionCancelEnabled": { + "description": "Output only. Whether oom session cancel is enabled.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "GenerateEphemeralCertRequest": { "description": "Ephemeral certificate creation request.", "id": "GenerateEphemeralCertRequest", @@ -4642,7 +4706,8 @@ "REENCRYPT", "SWITCHOVER", "ACQUIRE_SSRS_LEASE", - "RELEASE_SSRS_LEASE" + "RELEASE_SSRS_LEASE", + "RECONFIGURE_OLD_PRIMARY" ], "enumDeprecated": [ false, @@ -4685,6 +4750,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -4728,7 +4794,8 @@ "Re-encrypts CMEK instances with latest key version.", "Switches over to replica instance from primary.", "Acquire a lease for the setup of SQL Server Reporting Services (SSRS).", - "Release a lease for the setup of SQL Server Reporting Services (SSRS)." + "Release a lease for the setup of SQL Server Reporting Services (SSRS).", + "Reconfigures old primary after a promote replica operation. Effect of a promote operation to the old primary is executed in this operation, asynchronously from the promote replica operation executed to the replica." ], "type": "string" }, @@ -4994,6 +5061,22 @@ }, "type": "object" }, + "ReplicationCluster": { + "description": "Primary-DR replica pair", + "id": "ReplicationCluster", + "properties": { + "drReplica": { + "description": "Output only. read-only field that indicates if the replica is a dr_replica; not set for a primary.", + "readOnly": true, + "type": "boolean" + }, + "failoverDrReplicaName": { + "description": "Optional. If the instance is a primary instance, then this field identifies the disaster recovery (DR) replica. A DR replica is an optional configuration for Enterprise Plus edition instances. If the instance is a read replica, then the field is not set. Users can set this field to set a designated DR replica for a primary. Removing this field removes the DR replica.", + "type": "string" + } + }, + "type": "object" + }, "Reschedule": { "id": "Reschedule", "properties": { @@ -5211,7 +5294,7 @@ "type": "string" }, "enableGoogleMlIntegration": { - "description": "Optional. Configuration to enable Cloud SQL Vertex AI Integration", + "description": "Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for PostgreSQL instances.", "type": "boolean" }, "insightsConfig": { @@ -5510,6 +5593,20 @@ "description": "Instance start external sync request.", "id": "SqlInstancesStartExternalSyncRequest", "properties": { + "migrationType": { + "description": "Optional. MigrationType decides if the migration is a physical file based migration or logical migration.", + "enum": [ + "MIGRATION_TYPE_UNSPECIFIED", + "LOGICAL", + "PHYSICAL" + ], + "enumDescriptions": [ + "Default value is logical migration", + "Logical Migrations", + "Physical file based Migrations" + ], + "type": "string" + }, "mysqlSyncConfig": { "$ref": "MySqlSyncConfig", "description": "MySQL-specific settings for start external sync." @@ -5555,6 +5652,20 @@ "description": "Instance verify external sync settings request.", "id": "SqlInstancesVerifyExternalSyncSettingsRequest", "properties": { + "migrationType": { + "description": "Optional. MigrationType decides if the migration is a physical file based migration or logical migration", + "enum": [ + "MIGRATION_TYPE_UNSPECIFIED", + "LOGICAL", + "PHYSICAL" + ], + "enumDescriptions": [ + "Default value is logical migration", + "Logical Migrations", + "Physical file based Migrations" + ], + "type": "string" + }, "mysqlSyncConfig": { "$ref": "MySqlSyncConfig", "description": "Optional. MySQL-specific settings for start external sync." diff --git a/sqladmin/v1/sqladmin-gen.go b/sqladmin/v1/sqladmin-gen.go index d2317222139..75d3e5dfb4a 100644 --- a/sqladmin/v1/sqladmin-gen.go +++ b/sqladmin/v1/sqladmin-gen.go @@ -483,6 +483,24 @@ type BackupConfiguration struct { // we retain for point in time restore, from 1-7. TransactionLogRetentionDays int64 `json:"transactionLogRetentionDays,omitempty"` + // TransactionalLogStorageState: Output only. This value contains the + // storage location of transactional logs for the database for + // point-in-time recovery. + // + // Possible values: + // "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" - Unspecified. + // "DISK" - The transaction logs for the instance are stored on a data + // disk. + // "SWITCHING_TO_CLOUD_STORAGE" - The transaction logs for the + // instance are switching from being stored on a data disk to being + // stored in Cloud Storage. + // "SWITCHED_TO_CLOUD_STORAGE" - The transaction logs for the instance + // are now stored in Cloud Storage. Previously, they were stored on a + // data disk. + // "CLOUD_STORAGE" - The transaction logs for the instance are stored + // in Cloud Storage. + TransactionalLogStorageState string `json:"transactionalLogStorageState,omitempty"` + // ForceSendFields is a list of field names (e.g. // "BackupRetentionSettings") to unconditionally include in API // requests. By default, fields with empty or default values are omitted @@ -1288,6 +1306,9 @@ type DatabaseInstance struct { // instance. GceZone string `json:"gceZone,omitempty"` + // GeminiConfig: Gemini configuration. + GeminiConfig *GeminiInstanceConfig `json:"geminiConfig,omitempty"` + // InstanceType: The instance type. // // Possible values: @@ -1361,6 +1382,12 @@ type DatabaseInstance struct { // ReplicaNames: The replicas of the instance. ReplicaNames []string `json:"replicaNames,omitempty"` + // ReplicationCluster: Optional. The pair of a primary instance and + // disaster recovery (DR) replica. A DR replica is a cross-region + // replica that you designate for failover in the event that the primary + // instance has regional failure. + ReplicationCluster *ReplicationCluster `json:"replicationCluster,omitempty"` + // RootPassword: Initial root password. Use only on creation. You must // set root passwords before you can connect to PostgreSQL instances. RootPassword string `json:"rootPassword,omitempty"` @@ -2297,6 +2324,53 @@ func (s *FlagsListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GeminiInstanceConfig: Gemini configuration. +type GeminiInstanceConfig struct { + // ActiveQueryEnabled: Output only. Whether active query is enabled. + ActiveQueryEnabled bool `json:"activeQueryEnabled,omitempty"` + + // Entitled: Output only. Whether gemini is enabled. + Entitled bool `json:"entitled,omitempty"` + + // FlagRecommenderEnabled: Output only. Whether flag recommender is + // enabled. + FlagRecommenderEnabled bool `json:"flagRecommenderEnabled,omitempty"` + + // GoogleVacuumMgmtEnabled: Output only. Whether vacuum management is + // enabled. + GoogleVacuumMgmtEnabled bool `json:"googleVacuumMgmtEnabled,omitempty"` + + // IndexAdvisorEnabled: Output only. Whether index advisor is enabled. + IndexAdvisorEnabled bool `json:"indexAdvisorEnabled,omitempty"` + + // OomSessionCancelEnabled: Output only. Whether oom session cancel is + // enabled. + OomSessionCancelEnabled bool `json:"oomSessionCancelEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActiveQueryEnabled") + // 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. "ActiveQueryEnabled") 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 *GeminiInstanceConfig) MarshalJSON() ([]byte, error) { + type NoMethod GeminiInstanceConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GenerateEphemeralCertRequest: Ephemeral certificate creation request. type GenerateEphemeralCertRequest struct { // AccessToken: Optional. Access token to include in the signed @@ -3600,6 +3674,10 @@ type Operation struct { // Reporting Services (SSRS). // "RELEASE_SSRS_LEASE" - Release a lease for the setup of SQL Server // Reporting Services (SSRS). + // "RECONFIGURE_OLD_PRIMARY" - Reconfigures old primary after a + // promote replica operation. Effect of a promote operation to the old + // primary is executed in this operation, asynchronously from the + // promote replica operation executed to the replica. OperationType string `json:"operationType,omitempty"` // SelfLink: The URI of this resource. @@ -4022,6 +4100,43 @@ func (s *ReplicaConfiguration) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ReplicationCluster: Primary-DR replica pair +type ReplicationCluster struct { + // DrReplica: Output only. read-only field that indicates if the replica + // is a dr_replica; not set for a primary. + DrReplica bool `json:"drReplica,omitempty"` + + // FailoverDrReplicaName: Optional. If the instance is a primary + // instance, then this field identifies the disaster recovery (DR) + // replica. A DR replica is an optional configuration for Enterprise + // Plus edition instances. If the instance is a read replica, then the + // field is not set. Users can set this field to set a designated DR + // replica for a primary. Removing this field removes the DR replica. + FailoverDrReplicaName string `json:"failoverDrReplicaName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DrReplica") 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. "DrReplica") 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 *ReplicationCluster) MarshalJSON() ([]byte, error) { + type NoMethod ReplicationCluster + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type Reschedule struct { // RescheduleType: Required. The type of the reschedule. // @@ -4252,8 +4367,10 @@ type Settings struct { // "ENTERPRISE_PLUS" - The instance is an Enterprise Plus edition. Edition string `json:"edition,omitempty"` - // EnableGoogleMlIntegration: Optional. Configuration to enable Cloud - // SQL Vertex AI Integration + // EnableGoogleMlIntegration: Optional. When this parameter is set to + // true, Cloud SQL instances can connect to Vertex AI to pass requests + // for real-time predictions and insights to the AI. The default value + // is false. This applies only to Cloud SQL for PostgreSQL instances. EnableGoogleMlIntegration bool `json:"enableGoogleMlIntegration,omitempty"` // InsightsConfig: Insights configuration, for now relevant only for @@ -4704,6 +4821,15 @@ type SqlInstancesResetReplicaSizeRequest struct { // SqlInstancesStartExternalSyncRequest: Instance start external sync // request. type SqlInstancesStartExternalSyncRequest struct { + // MigrationType: Optional. MigrationType decides if the migration is a + // physical file based migration or logical migration. + // + // Possible values: + // "MIGRATION_TYPE_UNSPECIFIED" - Default value is logical migration + // "LOGICAL" - Logical Migrations + // "PHYSICAL" - Physical file based Migrations + MigrationType string `json:"migrationType,omitempty"` + // MysqlSyncConfig: MySQL-specific settings for start external sync. MysqlSyncConfig *MySqlSyncConfig `json:"mysqlSyncConfig,omitempty"` @@ -4732,7 +4858,7 @@ type SqlInstancesStartExternalSyncRequest struct { // "MAX" - Maximum parallel level. SyncParallelLevel string `json:"syncParallelLevel,omitempty"` - // ForceSendFields is a list of field names (e.g. "MysqlSyncConfig") to + // ForceSendFields is a list of field names (e.g. "MigrationType") 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 @@ -4740,13 +4866,12 @@ type SqlInstancesStartExternalSyncRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MysqlSyncConfig") 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 is a list of field names (e.g. "MigrationType") 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:"-"` } @@ -4759,6 +4884,15 @@ func (s *SqlInstancesStartExternalSyncRequest) MarshalJSON() ([]byte, error) { // SqlInstancesVerifyExternalSyncSettingsRequest: Instance verify // external sync settings request. type SqlInstancesVerifyExternalSyncSettingsRequest struct { + // MigrationType: Optional. MigrationType decides if the migration is a + // physical file based migration or logical migration + // + // Possible values: + // "MIGRATION_TYPE_UNSPECIFIED" - Default value is logical migration + // "LOGICAL" - Logical Migrations + // "PHYSICAL" - Physical file based Migrations + MigrationType string `json:"migrationType,omitempty"` + // MysqlSyncConfig: Optional. MySQL-specific settings for start external // sync. MysqlSyncConfig *MySqlSyncConfig `json:"mysqlSyncConfig,omitempty"` @@ -4792,7 +4926,7 @@ type SqlInstancesVerifyExternalSyncSettingsRequest struct { // replication setup only VerifyReplicationOnly bool `json:"verifyReplicationOnly,omitempty"` - // ForceSendFields is a list of field names (e.g. "MysqlSyncConfig") to + // ForceSendFields is a list of field names (e.g. "MigrationType") 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 @@ -4800,13 +4934,12 @@ type SqlInstancesVerifyExternalSyncSettingsRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MysqlSyncConfig") 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 is a list of field names (e.g. "MigrationType") 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:"-"` } diff --git a/sqladmin/v1beta4/sqladmin-api.json b/sqladmin/v1beta4/sqladmin-api.json index 50d4583ca9f..204bdcb4f64 100644 --- a/sqladmin/v1beta4/sqladmin-api.json +++ b/sqladmin/v1beta4/sqladmin-api.json @@ -2267,7 +2267,7 @@ } } }, - "revision": "20240304", + "revision": "20240317", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2403,6 +2403,25 @@ "description": "The number of days of transaction logs we retain for point in time restore, from 1-7.", "format": "int32", "type": "integer" + }, + "transactionalLogStorageState": { + "description": "Output only. This value contains the storage location of transactional logs for the database for point-in-time recovery.", + "enum": [ + "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED", + "DISK", + "SWITCHING_TO_CLOUD_STORAGE", + "SWITCHED_TO_CLOUD_STORAGE", + "CLOUD_STORAGE" + ], + "enumDescriptions": [ + "Unspecified.", + "The transaction logs for the instance are stored on a data disk.", + "The transaction logs for the instance are switching from being stored on a data disk to being stored in Cloud Storage.", + "The transaction logs for the instance are now stored in Cloud Storage. Previously, they were stored on a data disk.", + "The transaction logs for the instance are stored in Cloud Storage." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -3163,6 +3182,10 @@ "description": "The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. WARNING: Changing this might restart the instance.", "type": "string" }, + "geminiConfig": { + "$ref": "GeminiInstanceConfig", + "description": "Gemini instance configuration." + }, "instanceType": { "description": "The instance type.", "enum": [ @@ -3251,6 +3274,10 @@ }, "type": "array" }, + "replicationCluster": { + "$ref": "ReplicationCluster", + "description": "The pair of a primary instance and disaster recovery (DR) replica. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance has regional failure." + }, "rootPassword": { "description": "Initial root password. Use only on creation. You must set root passwords before you can connect to PostgreSQL instances.", "type": "string" @@ -3908,6 +3935,43 @@ }, "type": "object" }, + "GeminiInstanceConfig": { + "description": "Gemini configuration.", + "id": "GeminiInstanceConfig", + "properties": { + "activeQueryEnabled": { + "description": "Output only. Whether active query is enabled.", + "readOnly": true, + "type": "boolean" + }, + "entitled": { + "description": "Output only. Whether Gemini is enabled.", + "readOnly": true, + "type": "boolean" + }, + "flagRecommenderEnabled": { + "description": "Output only. Whether flag recommender is enabled.", + "readOnly": true, + "type": "boolean" + }, + "googleVacuumMgmtEnabled": { + "description": "Output only. Whether vacuum management is enabled.", + "readOnly": true, + "type": "boolean" + }, + "indexAdvisorEnabled": { + "description": "Output only. Whether index advisor is enabled.", + "readOnly": true, + "type": "boolean" + }, + "oomSessionCancelEnabled": { + "description": "Output only. Whether oom session cancel is enabled.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "GenerateEphemeralCertRequest": { "description": "Ephemeral certificate creation request.", "id": "GenerateEphemeralCertRequest", @@ -4643,7 +4707,8 @@ "REENCRYPT", "SWITCHOVER", "ACQUIRE_SSRS_LEASE", - "RELEASE_SSRS_LEASE" + "RELEASE_SSRS_LEASE", + "RECONFIGURE_OLD_PRIMARY" ], "enumDeprecated": [ false, @@ -4686,6 +4751,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -4729,7 +4795,8 @@ "Re-encrypts CMEK instances with latest key version.", "Switches over to replica instance from primary.", "Acquire a lease for the setup of SQL Server Reporting Services (SSRS).", - "Release a lease for the setup of SQL Server Reporting Services (SSRS)." + "Release a lease for the setup of SQL Server Reporting Services (SSRS).", + "Reconfigures old primary after a promote replica operation. Effect of a promote operation to the old primary is executed in this operation, asynchronously from the promote replica operation executed to the replica." ], "type": "string" }, @@ -4995,6 +5062,22 @@ }, "type": "object" }, + "ReplicationCluster": { + "description": "Primary-DR replica pair", + "id": "ReplicationCluster", + "properties": { + "drReplica": { + "description": "Output only. read-only field that indicates if the replica is a dr_replica; not set for a primary.", + "readOnly": true, + "type": "boolean" + }, + "failoverDrReplicaName": { + "description": "Optional. If the instance is a primary instance, then this field identifies the disaster recovery (DR) replica. A DR replica is an optional configuration for Enterprise Plus edition instances. If the instance is a read replica, then the field is not set. Users can set this field to set a designated DR replica for a primary. Removing this field removes the DR replica.", + "type": "string" + } + }, + "type": "object" + }, "Reschedule": { "id": "Reschedule", "properties": { @@ -5212,7 +5295,7 @@ "type": "string" }, "enableGoogleMlIntegration": { - "description": "Optional. Configuration to enable Cloud SQL Vertex AI Integration", + "description": "Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for PostgreSQL instances.", "type": "boolean" }, "insightsConfig": { @@ -5510,6 +5593,20 @@ "SqlInstancesStartExternalSyncRequest": { "id": "SqlInstancesStartExternalSyncRequest", "properties": { + "migrationType": { + "description": "Optional. MigrationType decides if the migration is a physical file based migration or logical migration.", + "enum": [ + "MIGRATION_TYPE_UNSPECIFIED", + "LOGICAL", + "PHYSICAL" + ], + "enumDescriptions": [ + "If no migration type is specified it will be defaulted to LOGICAL.", + "Logical Migrations", + "Physical file based Migrations" + ], + "type": "string" + }, "mysqlSyncConfig": { "$ref": "MySqlSyncConfig", "description": "MySQL-specific settings for start external sync." @@ -5554,6 +5651,20 @@ "SqlInstancesVerifyExternalSyncSettingsRequest": { "id": "SqlInstancesVerifyExternalSyncSettingsRequest", "properties": { + "migrationType": { + "description": "Optional. MigrationType field decides if the migration is a physical file based migration or logical migration", + "enum": [ + "MIGRATION_TYPE_UNSPECIFIED", + "LOGICAL", + "PHYSICAL" + ], + "enumDescriptions": [ + "If no migration type is specified it will be defaulted to LOGICAL.", + "Logical Migrations", + "Physical file based Migrations" + ], + "type": "string" + }, "mysqlSyncConfig": { "$ref": "MySqlSyncConfig", "description": "Optional. MySQL-specific settings for start external sync." diff --git a/sqladmin/v1beta4/sqladmin-gen.go b/sqladmin/v1beta4/sqladmin-gen.go index 486354026a6..535bca28170 100644 --- a/sqladmin/v1beta4/sqladmin-gen.go +++ b/sqladmin/v1beta4/sqladmin-gen.go @@ -483,6 +483,24 @@ type BackupConfiguration struct { // we retain for point in time restore, from 1-7. TransactionLogRetentionDays int64 `json:"transactionLogRetentionDays,omitempty"` + // TransactionalLogStorageState: Output only. This value contains the + // storage location of transactional logs for the database for + // point-in-time recovery. + // + // Possible values: + // "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED" - Unspecified. + // "DISK" - The transaction logs for the instance are stored on a data + // disk. + // "SWITCHING_TO_CLOUD_STORAGE" - The transaction logs for the + // instance are switching from being stored on a data disk to being + // stored in Cloud Storage. + // "SWITCHED_TO_CLOUD_STORAGE" - The transaction logs for the instance + // are now stored in Cloud Storage. Previously, they were stored on a + // data disk. + // "CLOUD_STORAGE" - The transaction logs for the instance are stored + // in Cloud Storage. + TransactionalLogStorageState string `json:"transactionalLogStorageState,omitempty"` + // ForceSendFields is a list of field names (e.g. // "BackupRetentionSettings") to unconditionally include in API // requests. By default, fields with empty or default values are omitted @@ -1287,6 +1305,9 @@ type DatabaseInstance struct { // instance. GceZone string `json:"gceZone,omitempty"` + // GeminiConfig: Gemini instance configuration. + GeminiConfig *GeminiInstanceConfig `json:"geminiConfig,omitempty"` + // InstanceType: The instance type. // // Possible values: @@ -1360,6 +1381,12 @@ type DatabaseInstance struct { // ReplicaNames: The replicas of the instance. ReplicaNames []string `json:"replicaNames,omitempty"` + // ReplicationCluster: The pair of a primary instance and disaster + // recovery (DR) replica. A DR replica is a cross-region replica that + // you designate for failover in the event that the primary instance has + // regional failure. + ReplicationCluster *ReplicationCluster `json:"replicationCluster,omitempty"` + // RootPassword: Initial root password. Use only on creation. You must // set root passwords before you can connect to PostgreSQL instances. RootPassword string `json:"rootPassword,omitempty"` @@ -2299,6 +2326,53 @@ func (s *FlagsListResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GeminiInstanceConfig: Gemini configuration. +type GeminiInstanceConfig struct { + // ActiveQueryEnabled: Output only. Whether active query is enabled. + ActiveQueryEnabled bool `json:"activeQueryEnabled,omitempty"` + + // Entitled: Output only. Whether Gemini is enabled. + Entitled bool `json:"entitled,omitempty"` + + // FlagRecommenderEnabled: Output only. Whether flag recommender is + // enabled. + FlagRecommenderEnabled bool `json:"flagRecommenderEnabled,omitempty"` + + // GoogleVacuumMgmtEnabled: Output only. Whether vacuum management is + // enabled. + GoogleVacuumMgmtEnabled bool `json:"googleVacuumMgmtEnabled,omitempty"` + + // IndexAdvisorEnabled: Output only. Whether index advisor is enabled. + IndexAdvisorEnabled bool `json:"indexAdvisorEnabled,omitempty"` + + // OomSessionCancelEnabled: Output only. Whether oom session cancel is + // enabled. + OomSessionCancelEnabled bool `json:"oomSessionCancelEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActiveQueryEnabled") + // 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. "ActiveQueryEnabled") 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 *GeminiInstanceConfig) MarshalJSON() ([]byte, error) { + type NoMethod GeminiInstanceConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GenerateEphemeralCertRequest: Ephemeral certificate creation request. type GenerateEphemeralCertRequest struct { // AccessToken: Optional. Access token to include in the signed @@ -3605,6 +3679,10 @@ type Operation struct { // Reporting Services (SSRS). // "RELEASE_SSRS_LEASE" - Release a lease for the setup of SQL Server // Reporting Services (SSRS). + // "RECONFIGURE_OLD_PRIMARY" - Reconfigures old primary after a + // promote replica operation. Effect of a promote operation to the old + // primary is executed in this operation, asynchronously from the + // promote replica operation executed to the replica. OperationType string `json:"operationType,omitempty"` // SelfLink: The URI of this resource. @@ -4027,6 +4105,43 @@ func (s *ReplicaConfiguration) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ReplicationCluster: Primary-DR replica pair +type ReplicationCluster struct { + // DrReplica: Output only. read-only field that indicates if the replica + // is a dr_replica; not set for a primary. + DrReplica bool `json:"drReplica,omitempty"` + + // FailoverDrReplicaName: Optional. If the instance is a primary + // instance, then this field identifies the disaster recovery (DR) + // replica. A DR replica is an optional configuration for Enterprise + // Plus edition instances. If the instance is a read replica, then the + // field is not set. Users can set this field to set a designated DR + // replica for a primary. Removing this field removes the DR replica. + FailoverDrReplicaName string `json:"failoverDrReplicaName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DrReplica") 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. "DrReplica") 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 *ReplicationCluster) MarshalJSON() ([]byte, error) { + type NoMethod ReplicationCluster + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type Reschedule struct { // RescheduleType: Required. The type of the reschedule. // @@ -4256,8 +4371,10 @@ type Settings struct { // "ENTERPRISE_PLUS" - The instance is an Enterprise Plus edition. Edition string `json:"edition,omitempty"` - // EnableGoogleMlIntegration: Optional. Configuration to enable Cloud - // SQL Vertex AI Integration + // EnableGoogleMlIntegration: Optional. When this parameter is set to + // true, Cloud SQL instances can connect to Vertex AI to pass requests + // for real-time predictions and insights to the AI. The default value + // is false. This applies only to Cloud SQL for PostgreSQL instances. EnableGoogleMlIntegration bool `json:"enableGoogleMlIntegration,omitempty"` // InsightsConfig: Insights configuration, for now relevant only for @@ -4705,6 +4822,16 @@ type SqlInstancesResetReplicaSizeRequest struct { } type SqlInstancesStartExternalSyncRequest struct { + // MigrationType: Optional. MigrationType decides if the migration is a + // physical file based migration or logical migration. + // + // Possible values: + // "MIGRATION_TYPE_UNSPECIFIED" - If no migration type is specified it + // will be defaulted to LOGICAL. + // "LOGICAL" - Logical Migrations + // "PHYSICAL" - Physical file based Migrations + MigrationType string `json:"migrationType,omitempty"` + // MysqlSyncConfig: MySQL-specific settings for start external sync. MysqlSyncConfig *MySqlSyncConfig `json:"mysqlSyncConfig,omitempty"` @@ -4733,7 +4860,7 @@ type SqlInstancesStartExternalSyncRequest struct { // "MAX" - Maximum parallel level. SyncParallelLevel string `json:"syncParallelLevel,omitempty"` - // ForceSendFields is a list of field names (e.g. "MysqlSyncConfig") to + // ForceSendFields is a list of field names (e.g. "MigrationType") 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 @@ -4741,13 +4868,12 @@ type SqlInstancesStartExternalSyncRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MysqlSyncConfig") 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 is a list of field names (e.g. "MigrationType") 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:"-"` } @@ -4758,6 +4884,16 @@ func (s *SqlInstancesStartExternalSyncRequest) MarshalJSON() ([]byte, error) { } type SqlInstancesVerifyExternalSyncSettingsRequest struct { + // MigrationType: Optional. MigrationType field decides if the migration + // is a physical file based migration or logical migration + // + // Possible values: + // "MIGRATION_TYPE_UNSPECIFIED" - If no migration type is specified it + // will be defaulted to LOGICAL. + // "LOGICAL" - Logical Migrations + // "PHYSICAL" - Physical file based Migrations + MigrationType string `json:"migrationType,omitempty"` + // MysqlSyncConfig: Optional. MySQL-specific settings for start external // sync. MysqlSyncConfig *MySqlSyncConfig `json:"mysqlSyncConfig,omitempty"` @@ -4791,7 +4927,7 @@ type SqlInstancesVerifyExternalSyncSettingsRequest struct { // replication setup only VerifyReplicationOnly bool `json:"verifyReplicationOnly,omitempty"` - // ForceSendFields is a list of field names (e.g. "MysqlSyncConfig") to + // ForceSendFields is a list of field names (e.g. "MigrationType") 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 @@ -4799,13 +4935,12 @@ type SqlInstancesVerifyExternalSyncSettingsRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MysqlSyncConfig") 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 is a list of field names (e.g. "MigrationType") 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:"-"` }