From 9d5f008642ce0996af3e4c84f9a017b64c6eb3d3 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Tue, 29 Oct 2024 00:28:27 -0700 Subject: [PATCH] feat(all): auto-regenerate discovery clients (#2845) --- .../v1/bigqueryreservation-api.json | 15 +- .../v1/bigqueryreservation-gen.go | 18 +- dataplex/v1/dataplex-api.json | 396 +++++++++++++++++- dataplex/v1/dataplex-gen.go | 222 ++++++++++ datastore/v1/datastore-api.json | 53 ++- datastore/v1/datastore-gen.go | 86 +++- datastore/v1beta3/datastore-api.json | 53 ++- datastore/v1beta3/datastore-gen.go | 86 +++- documentai/v1beta3/documentai-api.json | 12 +- documentai/v1beta3/documentai-gen.go | 4 + firestore/v1/firestore-api.json | 6 +- firestore/v1/firestore-gen.go | 6 +- firestore/v1beta1/firestore-api.json | 6 +- firestore/v1beta1/firestore-gen.go | 6 +- looker/v1/looker-api.json | 10 +- looker/v1/looker-gen.go | 17 +- texttospeech/v1/texttospeech-api.json | 54 ++- texttospeech/v1/texttospeech-gen.go | 82 +++- texttospeech/v1beta1/texttospeech-api.json | 54 ++- texttospeech/v1beta1/texttospeech-gen.go | 82 +++- .../v1/travelimpactmodel-api.json | 4 +- travelimpactmodel/v1/travelimpactmodel-gen.go | 5 +- 22 files changed, 1221 insertions(+), 56 deletions(-) diff --git a/bigqueryreservation/v1/bigqueryreservation-api.json b/bigqueryreservation/v1/bigqueryreservation-api.json index 69bfbe1e8b6..c26ae88f259 100644 --- a/bigqueryreservation/v1/bigqueryreservation-api.json +++ b/bigqueryreservation/v1/bigqueryreservation-api.json @@ -935,7 +935,7 @@ } } }, - "revision": "20240921", + "revision": "20241023", "rootUrl": "https://bigqueryreservation.googleapis.com/", "schemas": { "Assignment": { @@ -946,6 +946,10 @@ "description": "The resource which will use the reservation. E.g. `projects/myproject`, `folders/123`, or `organizations/456`.", "type": "string" }, + "enableGeminiInBigquery": { + "description": "Optional. This field controls if \"Gemini in BigQuery\" (https://cloud.google.com/gemini/docs/bigquery/overview) features should be enabled for this reservation assignment, which is not on by default. \"Gemini in BigQuery\" has a distinct compliance posture from BigQuery. If this field is set to true, the assignment job type is QUERY, and the parent reservation edition is ENTERPRISE_PLUS, then the assignment will give the grantee project/organization access to \"Gemini in BigQuery\" features.", + "type": "boolean" + }, "jobType": { "description": "Which type of jobs will use the reservation.", "enum": [ @@ -994,7 +998,7 @@ "id": "Autoscale", "properties": { "currentSlots": { - "description": "Output only. The slot capacity added to this reservation when autoscale happens. Will be between [0, max_slots].", + "description": "Output only. The slot capacity added to this reservation when autoscale happens. Will be between [0, max_slots]. Note: after users reduce max_slots, it may take a while before it can be propagated, so current_slots may stay in the original value and could be larger than max_slots for that brief period (less than one minute)", "format": "int64", "readOnly": true, "type": "string" @@ -1326,6 +1330,13 @@ "description": "If false, any query or pipeline job using this reservation will use idle slots from other reservations within the same admin project. If true, a query or pipeline job using this reservation will execute with the slot capacity specified in the slot_capacity field at most.", "type": "boolean" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels associated with this reservation. You can use these to organize and group your reservations. You can set this property when inserting or updating a reservation.", + "type": "object" + }, "multiRegionAuxiliary": { "description": "Applicable only for reservations located within one of the BigQuery multi-regions (US or EU). If set to true, this reservation is placed in the organization's secondary region which is designated for disaster recovery purposes. If false, this reservation is placed in the organization's default region. NOTE: this is a preview feature. Project must be allow-listed in order to set this field.", "type": "boolean" diff --git a/bigqueryreservation/v1/bigqueryreservation-gen.go b/bigqueryreservation/v1/bigqueryreservation-gen.go index 412078f3b9b..3da3debaf59 100644 --- a/bigqueryreservation/v1/bigqueryreservation-gen.go +++ b/bigqueryreservation/v1/bigqueryreservation-gen.go @@ -227,6 +227,15 @@ type Assignment struct { // Assignee: The resource which will use the reservation. E.g. // `projects/myproject`, `folders/123`, or `organizations/456`. Assignee string `json:"assignee,omitempty"` + // EnableGeminiInBigquery: Optional. This field controls if "Gemini in + // BigQuery" (https://cloud.google.com/gemini/docs/bigquery/overview) features + // should be enabled for this reservation assignment, which is not on by + // default. "Gemini in BigQuery" has a distinct compliance posture from + // BigQuery. If this field is set to true, the assignment job type is QUERY, + // and the parent reservation edition is ENTERPRISE_PLUS, then the assignment + // will give the grantee project/organization access to "Gemini in BigQuery" + // features. + EnableGeminiInBigquery bool `json:"enableGeminiInBigquery,omitempty"` // JobType: Which type of jobs will use the reservation. // // Possible values: @@ -280,7 +289,10 @@ func (s Assignment) MarshalJSON() ([]byte, error) { // Autoscale: Auto scaling settings. type Autoscale struct { // CurrentSlots: Output only. The slot capacity added to this reservation when - // autoscale happens. Will be between [0, max_slots]. + // autoscale happens. Will be between [0, max_slots]. Note: after users reduce + // max_slots, it may take a while before it can be propagated, so current_slots + // may stay in the original value and could be larger than max_slots for that + // brief period (less than one minute) CurrentSlots int64 `json:"currentSlots,omitempty,string"` // MaxSlots: Number of slots to be scaled when needed. MaxSlots int64 `json:"maxSlots,omitempty,string"` @@ -670,6 +682,10 @@ type Reservation struct { // If true, a query or pipeline job using this reservation will execute with // the slot capacity specified in the slot_capacity field at most. IgnoreIdleSlots bool `json:"ignoreIdleSlots,omitempty"` + // Labels: Optional. The labels associated with this reservation. You can use + // these to organize and group your reservations. You can set this property + // when inserting or updating a reservation. + Labels map[string]string `json:"labels,omitempty"` // MultiRegionAuxiliary: Applicable only for reservations located within one of // the BigQuery multi-regions (US or EU). If set to true, this reservation is // placed in the organization's secondary region which is designated for diff --git a/dataplex/v1/dataplex-api.json b/dataplex/v1/dataplex-api.json index 608cc596bb5..5a82a3c5422 100644 --- a/dataplex/v1/dataplex-api.json +++ b/dataplex/v1/dataplex-api.json @@ -15,6 +15,233 @@ "description": "Dataplex API is used to manage the lifecycle of data lakes.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/dataplex/docs", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataplex.us-west8.rep.googleapis.com/", + "location": "us-west8" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -5997,7 +6224,7 @@ } } }, - "revision": "20241001", + "revision": "20241019", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -7118,6 +7345,142 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataDiscoveryResult": { + "description": "The output of a data discovery scan.", + "id": "GoogleCloudDataplexV1DataDiscoveryResult", + "properties": { + "bigqueryPublishing": { + "$ref": "GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing", + "description": "Output only. Configuration for metadata publishing.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing": { + "description": "Describes BigQuery publishing configurations.", + "id": "GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing", + "properties": { + "dataset": { + "description": "Output only. The BigQuery dataset to publish to. It takes the form projects/{project_id}/datasets/{dataset_id}. If not set, the service creates a default publishing dataset.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoverySpec": { + "description": "Spec for a data discovery scan.", + "id": "GoogleCloudDataplexV1DataDiscoverySpec", + "properties": { + "bigqueryPublishingConfig": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig", + "description": "Optional. Configuration for metadata publishing." + }, + "storageConfig": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfig", + "description": "Cloud Storage related configurations." + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig": { + "description": "Describes BigQuery publishing configurations.", + "id": "GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig", + "properties": { + "connection": { + "description": "Optional. The BigQuery connection used to create BigLake tables. Must be in the form projects/{project_id}/locations/{location_id}/connections/{connection_id}", + "type": "string" + }, + "tableType": { + "description": "Optional. Determines whether to publish discovered tables as BigLake external tables or non-BigLake external tables.", + "enum": [ + "TABLE_TYPE_UNSPECIFIED", + "EXTERNAL", + "BIGLAKE" + ], + "enumDescriptions": [ + "Table type unspecified.", + "Default. Discovered tables are published as BigQuery external tables whose data is accessed using the credentials of the user querying the table.", + "Discovered tables are published as BigLake external tables whose data is accessed using the credentials of the associated BigQuery connection." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoverySpecStorageConfig": { + "description": "Configurations related to Cloud Storage as the data source.", + "id": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfig", + "properties": { + "csvOptions": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions", + "description": "Optional. Configuration for CSV data." + }, + "excludePatterns": { + "description": "Optional. Defines the data to exclude during discovery. Provide a list of patterns that identify the data to exclude. For Cloud Storage bucket assets, these patterns are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these patterns are interpreted as patterns to match table names.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includePatterns": { + "description": "Optional. Defines the data to include during discovery when only a subset of the data should be considered. Provide a list of patterns that identify the data to include. For Cloud Storage bucket assets, these patterns are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these patterns are interpreted as patterns to match table names.", + "items": { + "type": "string" + }, + "type": "array" + }, + "jsonOptions": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions", + "description": "Optional. Configuration for JSON data." + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions": { + "description": "Describes CSV and similar semi-structured data formats.", + "id": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions", + "properties": { + "delimiter": { + "description": "Optional. The delimiter that is used to separate values. The default is , (comma).", + "type": "string" + }, + "encoding": { + "description": "Optional. The character encoding of the data. The default is UTF-8.", + "type": "string" + }, + "headerRows": { + "description": "Optional. The number of rows to interpret as header rows that should be skipped when reading data rows.", + "format": "int32", + "type": "integer" + }, + "quote": { + "description": "Optional. The character used to quote column values. Accepts \" (double quotation mark) or ' (single quotation mark). If unspecified, defaults to \" (double quotation mark).", + "type": "string" + }, + "typeInferenceDisabled": { + "description": "Optional. Whether to disable the inference of data types for CSV data. If true, all columns are registered as strings.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions": { + "description": "Describes JSON data format.", + "id": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions", + "properties": { + "encoding": { + "description": "Optional. The character encoding of the data. The default is UTF-8.", + "type": "string" + }, + "typeInferenceDisabled": { + "description": "Optional. Whether to disable the inference of data types for JSON data. If true, all columns are registered as their primitive types (strings, number, or boolean).", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataProfileResult": { "description": "DataProfileResult defines the output of DataProfileScan. Each field of the table will have field type specific profile result.", "id": "GoogleCloudDataplexV1DataProfileResult", @@ -8064,6 +8427,15 @@ "$ref": "GoogleCloudDataplexV1DataSource", "description": "Required. The data source for DataScan." }, + "dataDiscoveryResult": { + "$ref": "GoogleCloudDataplexV1DataDiscoveryResult", + "description": "Output only. The result of a data discovery scan.", + "readOnly": true + }, + "dataDiscoverySpec": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpec", + "description": "Settings for a data discovery scan." + }, "dataProfileResult": { "$ref": "GoogleCloudDataplexV1DataProfileResult", "description": "Output only. The result of a data profile scan.", @@ -8135,12 +8507,14 @@ "enum": [ "DATA_SCAN_TYPE_UNSPECIFIED", "DATA_QUALITY", - "DATA_PROFILE" + "DATA_PROFILE", + "DATA_DISCOVERY" ], "enumDescriptions": [ "The data scan type is unspecified.", "Data quality scan.", - "Data profile scan." + "Data profile scan.", + "Data discovery scan." ], "readOnly": true, "type": "string" @@ -8456,6 +8830,16 @@ "readOnly": true, "type": "string" }, + "dataDiscoveryResult": { + "$ref": "GoogleCloudDataplexV1DataDiscoveryResult", + "description": "Output only. The result of a data discovery scan.", + "readOnly": true + }, + "dataDiscoverySpec": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpec", + "description": "Output only. Settings for a data discovery scan.", + "readOnly": true + }, "dataProfileResult": { "$ref": "GoogleCloudDataplexV1DataProfileResult", "description": "Output only. The result of a data profile scan.", @@ -8526,12 +8910,14 @@ "enum": [ "DATA_SCAN_TYPE_UNSPECIFIED", "DATA_QUALITY", - "DATA_PROFILE" + "DATA_PROFILE", + "DATA_DISCOVERY" ], "enumDescriptions": [ "The data scan type is unspecified.", "Data quality scan.", - "Data profile scan." + "Data profile scan.", + "Data discovery scan." ], "readOnly": true, "type": "string" diff --git a/dataplex/v1/dataplex-gen.go b/dataplex/v1/dataplex-gen.go index 1b248ecb08e..5f5c01cb07f 100644 --- a/dataplex/v1/dataplex-gen.go +++ b/dataplex/v1/dataplex-gen.go @@ -1817,6 +1817,218 @@ func (s GoogleCloudDataplexV1DataAttributeBindingPath) MarshalJSON() ([]byte, er return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1DataDiscoveryResult: The output of a data discovery +// scan. +type GoogleCloudDataplexV1DataDiscoveryResult struct { + // BigqueryPublishing: Output only. Configuration for metadata publishing. + BigqueryPublishing *GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing `json:"bigqueryPublishing,omitempty"` + // ForceSendFields is a list of field names (e.g. "BigqueryPublishing") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "BigqueryPublishing") to include + // in API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoveryResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoveryResult + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing: Describes +// BigQuery publishing configurations. +type GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing struct { + // Dataset: Output only. The BigQuery dataset to publish to. It takes the form + // projects/{project_id}/datasets/{dataset_id}. If not set, the service creates + // a default publishing dataset. + Dataset string `json:"dataset,omitempty"` + // ForceSendFields is a list of field names (e.g. "Dataset") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Dataset") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoverySpec: Spec for a data discovery scan. +type GoogleCloudDataplexV1DataDiscoverySpec struct { + // BigqueryPublishingConfig: Optional. Configuration for metadata publishing. + BigqueryPublishingConfig *GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig `json:"bigqueryPublishingConfig,omitempty"` + // StorageConfig: Cloud Storage related configurations. + StorageConfig *GoogleCloudDataplexV1DataDiscoverySpecStorageConfig `json:"storageConfig,omitempty"` + // ForceSendFields is a list of field names (e.g. "BigqueryPublishingConfig") + // to unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "BigqueryPublishingConfig") to + // include in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoverySpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoverySpec + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig: Describes +// BigQuery publishing configurations. +type GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig struct { + // Connection: Optional. The BigQuery connection used to create BigLake tables. + // Must be in the form + // projects/{project_id}/locations/{location_id}/connections/{connection_id} + Connection string `json:"connection,omitempty"` + // TableType: Optional. Determines whether to publish discovered tables as + // BigLake external tables or non-BigLake external tables. + // + // Possible values: + // "TABLE_TYPE_UNSPECIFIED" - Table type unspecified. + // "EXTERNAL" - Default. Discovered tables are published as BigQuery external + // tables whose data is accessed using the credentials of the user querying the + // table. + // "BIGLAKE" - Discovered tables are published as BigLake external tables + // whose data is accessed using the credentials of the associated BigQuery + // connection. + TableType string `json:"tableType,omitempty"` + // ForceSendFields is a list of field names (e.g. "Connection") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Connection") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoverySpecStorageConfig: Configurations related +// to Cloud Storage as the data source. +type GoogleCloudDataplexV1DataDiscoverySpecStorageConfig struct { + // CsvOptions: Optional. Configuration for CSV data. + CsvOptions *GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions `json:"csvOptions,omitempty"` + // ExcludePatterns: Optional. Defines the data to exclude during discovery. + // Provide a list of patterns that identify the data to exclude. For Cloud + // Storage bucket assets, these patterns are interpreted as glob patterns used + // to match object names. For BigQuery dataset assets, these patterns are + // interpreted as patterns to match table names. + ExcludePatterns []string `json:"excludePatterns,omitempty"` + // IncludePatterns: Optional. Defines the data to include during discovery when + // only a subset of the data should be considered. Provide a list of patterns + // that identify the data to include. For Cloud Storage bucket assets, these + // patterns are interpreted as glob patterns used to match object names. For + // BigQuery dataset assets, these patterns are interpreted as patterns to match + // table names. + IncludePatterns []string `json:"includePatterns,omitempty"` + // JsonOptions: Optional. Configuration for JSON data. + JsonOptions *GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions `json:"jsonOptions,omitempty"` + // ForceSendFields is a list of field names (e.g. "CsvOptions") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "CsvOptions") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoverySpecStorageConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoverySpecStorageConfig + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions: Describes CSV +// and similar semi-structured data formats. +type GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions struct { + // Delimiter: Optional. The delimiter that is used to separate values. The + // default is , (comma). + Delimiter string `json:"delimiter,omitempty"` + // Encoding: Optional. The character encoding of the data. The default is + // UTF-8. + Encoding string `json:"encoding,omitempty"` + // HeaderRows: Optional. The number of rows to interpret as header rows that + // should be skipped when reading data rows. + HeaderRows int64 `json:"headerRows,omitempty"` + // Quote: Optional. The character used to quote column values. Accepts " + // (double quotation mark) or ' (single quotation mark). If unspecified, + // defaults to " (double quotation mark). + Quote string `json:"quote,omitempty"` + // TypeInferenceDisabled: Optional. Whether to disable the inference of data + // types for CSV data. If true, all columns are registered as strings. + TypeInferenceDisabled bool `json:"typeInferenceDisabled,omitempty"` + // ForceSendFields is a list of field names (e.g. "Delimiter") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Delimiter") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions: Describes +// JSON data format. +type GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions struct { + // Encoding: Optional. The character encoding of the data. The default is + // UTF-8. + Encoding string `json:"encoding,omitempty"` + // TypeInferenceDisabled: Optional. Whether to disable the inference of data + // types for JSON data. If true, all columns are registered as their primitive + // types (strings, number, or boolean). + TypeInferenceDisabled bool `json:"typeInferenceDisabled,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. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + 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. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1DataProfileResult: DataProfileResult defines the output // of DataProfileScan. Each field of the table will have field type specific // profile result. @@ -3253,6 +3465,10 @@ type GoogleCloudDataplexV1DataScan struct { CreateTime string `json:"createTime,omitempty"` // Data: Required. The data source for DataScan. Data *GoogleCloudDataplexV1DataSource `json:"data,omitempty"` + // DataDiscoveryResult: Output only. The result of a data discovery scan. + DataDiscoveryResult *GoogleCloudDataplexV1DataDiscoveryResult `json:"dataDiscoveryResult,omitempty"` + // DataDiscoverySpec: Settings for a data discovery scan. + DataDiscoverySpec *GoogleCloudDataplexV1DataDiscoverySpec `json:"dataDiscoverySpec,omitempty"` // DataProfileResult: Output only. The result of a data profile scan. DataProfileResult *GoogleCloudDataplexV1DataProfileResult `json:"dataProfileResult,omitempty"` // DataProfileSpec: Settings for a data profile scan. @@ -3294,6 +3510,7 @@ type GoogleCloudDataplexV1DataScan struct { // "DATA_SCAN_TYPE_UNSPECIFIED" - The data scan type is unspecified. // "DATA_QUALITY" - Data quality scan. // "DATA_PROFILE" - Data profile scan. + // "DATA_DISCOVERY" - Data discovery scan. Type string `json:"type,omitempty"` // Uid: Output only. System generated globally unique ID for the scan. This ID // will be different if the scan is deleted and re-created with the same name. @@ -3680,6 +3897,10 @@ func (s GoogleCloudDataplexV1DataScanExecutionStatus) MarshalJSON() ([]byte, err type GoogleCloudDataplexV1DataScanJob struct { // CreateTime: Output only. The time when the DataScanJob was created. CreateTime string `json:"createTime,omitempty"` + // DataDiscoveryResult: Output only. The result of a data discovery scan. + DataDiscoveryResult *GoogleCloudDataplexV1DataDiscoveryResult `json:"dataDiscoveryResult,omitempty"` + // DataDiscoverySpec: Output only. Settings for a data discovery scan. + DataDiscoverySpec *GoogleCloudDataplexV1DataDiscoverySpec `json:"dataDiscoverySpec,omitempty"` // DataProfileResult: Output only. The result of a data profile scan. DataProfileResult *GoogleCloudDataplexV1DataProfileResult `json:"dataProfileResult,omitempty"` // DataProfileSpec: Output only. Settings for a data profile scan. @@ -3717,6 +3938,7 @@ type GoogleCloudDataplexV1DataScanJob struct { // "DATA_SCAN_TYPE_UNSPECIFIED" - The data scan type is unspecified. // "DATA_QUALITY" - Data quality scan. // "DATA_PROFILE" - Data profile scan. + // "DATA_DISCOVERY" - Data discovery scan. Type string `json:"type,omitempty"` // Uid: Output only. System generated globally unique ID for the DataScanJob. Uid string `json:"uid,omitempty"` diff --git a/datastore/v1/datastore-api.json b/datastore/v1/datastore-api.json index b6500f27b2c..1312e1fb4fa 100644 --- a/datastore/v1/datastore-api.json +++ b/datastore/v1/datastore-api.json @@ -654,7 +654,7 @@ } } }, - "revision": "20241008", + "revision": "20241018", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -1064,6 +1064,51 @@ }, "type": "object" }, + "FindNearest": { + "description": "Nearest Neighbors search config. The ordering provided by FindNearest supersedes the order_by stage. If multiple documents have the same vector distance, the returned document order is not guaranteed to be stable between queries.", + "id": "FindNearest", + "properties": { + "distanceMeasure": { + "description": "Required. The Distance Measure to use, required.", + "enum": [ + "DISTANCE_MEASURE_UNSPECIFIED", + "EUCLIDEAN", + "COSINE", + "DOT_PRODUCT" + ], + "enumDescriptions": [ + "Should not be set.", + "Measures the EUCLIDEAN distance between the vectors. See [Euclidean](https://en.wikipedia.org/wiki/Euclidean_distance) to learn more. The resulting distance decreases the more similar two vectors are.", + "COSINE distance compares vectors based on the angle between them, which allows you to measure similarity that isn't based on the vectors magnitude. We recommend using DOT_PRODUCT with unit normalized vectors instead of COSINE distance, which is mathematically equivalent with better performance. See [Cosine Similarity](https://en.wikipedia.org/wiki/Cosine_similarity) to learn more about COSINE similarity and COSINE distance. The resulting COSINE distance decreases the more similar two vectors are.", + "Similar to cosine but is affected by the magnitude of the vectors. See [Dot Product](https://en.wikipedia.org/wiki/Dot_product) to learn more. The resulting distance increases the more similar two vectors are." + ], + "type": "string" + }, + "distanceResultProperty": { + "description": "Optional. Optional name of the field to output the result of the vector distance calculation. Must conform to entity property limitations.", + "type": "string" + }, + "distanceThreshold": { + "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold * For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", + "format": "double", + "type": "number" + }, + "limit": { + "description": "Required. The number of nearest neighbors to return. Must be a positive integer of no more than 100.", + "format": "int32", + "type": "integer" + }, + "queryVector": { + "$ref": "Value", + "description": "Required. The query vector that we are searching on. Must be a vector of no more than 2048 dimensions." + }, + "vectorProperty": { + "$ref": "PropertyReference", + "description": "Required. An indexed vector property to search upon. Only documents which contain vectors whose dimensionality match the query_vector can be returned." + } + }, + "type": "object" + }, "GoogleDatastoreAdminV1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", "id": "GoogleDatastoreAdminV1CommonMetadata", @@ -2228,7 +2273,7 @@ "type": "object" }, "Query": { - "description": "A query for entities.", + "description": "A query for entities. The query stages are executed in the following order: 1. kind 2. filter 3. projection 4. order + start_cursor + end_cursor 5. offset 6. limit 7. find_nearest", "id": "Query", "properties": { "distinctOn": { @@ -2247,6 +2292,10 @@ "$ref": "Filter", "description": "The filter to apply." }, + "findNearest": { + "$ref": "FindNearest", + "description": "Optional. A potential Nearest Neighbors Search. Applies after all other filters and ordering. Finds the closest vector embeddings to the given query vector." + }, "kind": { "description": "The kinds to query (if empty, returns entities of all kinds). Currently at most 1 kind may be specified.", "items": { diff --git a/datastore/v1/datastore-gen.go b/datastore/v1/datastore-gen.go index 395050bd3e7..4481d56be60 100644 --- a/datastore/v1/datastore-gen.go +++ b/datastore/v1/datastore-gen.go @@ -807,6 +807,84 @@ func (s Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// FindNearest: Nearest Neighbors search config. The ordering provided by +// FindNearest supersedes the order_by stage. If multiple documents have the +// same vector distance, the returned document order is not guaranteed to be +// stable between queries. +type FindNearest struct { + // DistanceMeasure: Required. The Distance Measure to use, required. + // + // Possible values: + // "DISTANCE_MEASURE_UNSPECIFIED" - Should not be set. + // "EUCLIDEAN" - Measures the EUCLIDEAN distance between the vectors. See + // [Euclidean](https://en.wikipedia.org/wiki/Euclidean_distance) to learn more. + // The resulting distance decreases the more similar two vectors are. + // "COSINE" - COSINE distance compares vectors based on the angle between + // them, which allows you to measure similarity that isn't based on the vectors + // magnitude. We recommend using DOT_PRODUCT with unit normalized vectors + // instead of COSINE distance, which is mathematically equivalent with better + // performance. See [Cosine + // Similarity](https://en.wikipedia.org/wiki/Cosine_similarity) to learn more + // about COSINE similarity and COSINE distance. The resulting COSINE distance + // decreases the more similar two vectors are. + // "DOT_PRODUCT" - Similar to cosine but is affected by the magnitude of the + // vectors. See [Dot Product](https://en.wikipedia.org/wiki/Dot_product) to + // learn more. The resulting distance increases the more similar two vectors + // are. + DistanceMeasure string `json:"distanceMeasure,omitempty"` + // DistanceResultProperty: Optional. Optional name of the field to output the + // result of the vector distance calculation. Must conform to entity property + // limitations. + DistanceResultProperty string `json:"distanceResultProperty,omitempty"` + // DistanceThreshold: Optional. Option to specify a threshold for which no less + // similar documents will be returned. The behavior of the specified + // `distance_measure` will affect the meaning of the distance threshold. Since + // DOT_PRODUCT distances increase when the vectors are more similar, the + // comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance <= + // distance_threshold * For DOT_PRODUCT: WHERE distance >= distance_threshold + DistanceThreshold float64 `json:"distanceThreshold,omitempty"` + // Limit: Required. The number of nearest neighbors to return. Must be a + // positive integer of no more than 100. + Limit int64 `json:"limit,omitempty"` + // QueryVector: Required. The query vector that we are searching on. Must be a + // vector of no more than 2048 dimensions. + QueryVector *Value `json:"queryVector,omitempty"` + // VectorProperty: Required. An indexed vector property to search upon. Only + // documents which contain vectors whose dimensionality match the query_vector + // can be returned. + VectorProperty *PropertyReference `json:"vectorProperty,omitempty"` + // ForceSendFields is a list of field names (e.g. "DistanceMeasure") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "DistanceMeasure") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s FindNearest) MarshalJSON() ([]byte, error) { + type NoMethod FindNearest + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +func (s *FindNearest) UnmarshalJSON(data []byte) error { + type NoMethod FindNearest + var s1 struct { + DistanceThreshold gensupport.JSONFloat64 `json:"distanceThreshold"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DistanceThreshold = float64(s1.DistanceThreshold) + return nil +} + // GoogleDatastoreAdminV1CommonMetadata: Metadata common to all Datastore Admin // operations. type GoogleDatastoreAdminV1CommonMetadata struct { @@ -2395,7 +2473,9 @@ func (s PropertyTransform) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } -// Query: A query for entities. +// Query: A query for entities. The query stages are executed in the following +// order: 1. kind 2. filter 3. projection 4. order + start_cursor + end_cursor +// 5. offset 6. limit 7. find_nearest type Query struct { // DistinctOn: The properties to make distinct. The query results will contain // the first result for each distinct combination of values for the given @@ -2409,6 +2489,10 @@ type Query struct { EndCursor string `json:"endCursor,omitempty"` // Filter: The filter to apply. Filter *Filter `json:"filter,omitempty"` + // FindNearest: Optional. A potential Nearest Neighbors Search. Applies after + // all other filters and ordering. Finds the closest vector embeddings to the + // given query vector. + FindNearest *FindNearest `json:"findNearest,omitempty"` // Kind: The kinds to query (if empty, returns entities of all kinds). // Currently at most 1 kind may be specified. Kind []*KindExpression `json:"kind,omitempty"` diff --git a/datastore/v1beta3/datastore-api.json b/datastore/v1beta3/datastore-api.json index f50b1329643..46f21e21e70 100644 --- a/datastore/v1beta3/datastore-api.json +++ b/datastore/v1beta3/datastore-api.json @@ -336,7 +336,7 @@ } } }, - "revision": "20241008", + "revision": "20241018", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -724,6 +724,51 @@ }, "type": "object" }, + "FindNearest": { + "description": "Nearest Neighbors search config. The ordering provided by FindNearest supersedes the order_by stage. If multiple documents have the same vector distance, the returned document order is not guaranteed to be stable between queries.", + "id": "FindNearest", + "properties": { + "distanceMeasure": { + "description": "Required. The Distance Measure to use, required.", + "enum": [ + "DISTANCE_MEASURE_UNSPECIFIED", + "EUCLIDEAN", + "COSINE", + "DOT_PRODUCT" + ], + "enumDescriptions": [ + "Should not be set.", + "Measures the EUCLIDEAN distance between the vectors. See [Euclidean](https://en.wikipedia.org/wiki/Euclidean_distance) to learn more. The resulting distance decreases the more similar two vectors are.", + "COSINE distance compares vectors based on the angle between them, which allows you to measure similarity that isn't based on the vectors magnitude. We recommend using DOT_PRODUCT with unit normalized vectors instead of COSINE distance, which is mathematically equivalent with better performance. See [Cosine Similarity](https://en.wikipedia.org/wiki/Cosine_similarity) to learn more about COSINE similarity and COSINE distance. The resulting COSINE distance decreases the more similar two vectors are.", + "Similar to cosine but is affected by the magnitude of the vectors. See [Dot Product](https://en.wikipedia.org/wiki/Dot_product) to learn more. The resulting distance increases the more similar two vectors are." + ], + "type": "string" + }, + "distanceResultProperty": { + "description": "Optional. Optional name of the field to output the result of the vector distance calculation. Must conform to entity property limitations.", + "type": "string" + }, + "distanceThreshold": { + "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold * For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", + "format": "double", + "type": "number" + }, + "limit": { + "description": "Required. The number of nearest neighbors to return. Must be a positive integer of no more than 100.", + "format": "int32", + "type": "integer" + }, + "queryVector": { + "$ref": "Value", + "description": "Required. The query vector that we are searching on. Must be a vector of no more than 2048 dimensions." + }, + "vectorProperty": { + "$ref": "PropertyReference", + "description": "Required. An indexed vector property to search upon. Only documents which contain vectors whose dimensionality match the query_vector can be returned." + } + }, + "type": "object" + }, "GoogleDatastoreAdminV1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", "id": "GoogleDatastoreAdminV1CommonMetadata", @@ -1674,7 +1719,7 @@ "type": "object" }, "Query": { - "description": "A query for entities.", + "description": "A query for entities. The query stages are executed in the following order: 1. kind 2. filter 3. projection 4. order + start_cursor + end_cursor 5. offset 6. limit 7. find_nearest", "id": "Query", "properties": { "distinctOn": { @@ -1693,6 +1738,10 @@ "$ref": "Filter", "description": "The filter to apply." }, + "findNearest": { + "$ref": "FindNearest", + "description": "Optional. A potential Nearest Neighbors Search. Applies after all other filters and ordering. Finds the closest vector embeddings to the given query vector." + }, "kind": { "description": "The kinds to query (if empty, returns entities of all kinds). Currently at most 1 kind may be specified.", "items": { diff --git a/datastore/v1beta3/datastore-gen.go b/datastore/v1beta3/datastore-gen.go index aa2aa4c50c5..5bd1a0f0917 100644 --- a/datastore/v1beta3/datastore-gen.go +++ b/datastore/v1beta3/datastore-gen.go @@ -758,6 +758,84 @@ func (s Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// FindNearest: Nearest Neighbors search config. The ordering provided by +// FindNearest supersedes the order_by stage. If multiple documents have the +// same vector distance, the returned document order is not guaranteed to be +// stable between queries. +type FindNearest struct { + // DistanceMeasure: Required. The Distance Measure to use, required. + // + // Possible values: + // "DISTANCE_MEASURE_UNSPECIFIED" - Should not be set. + // "EUCLIDEAN" - Measures the EUCLIDEAN distance between the vectors. See + // [Euclidean](https://en.wikipedia.org/wiki/Euclidean_distance) to learn more. + // The resulting distance decreases the more similar two vectors are. + // "COSINE" - COSINE distance compares vectors based on the angle between + // them, which allows you to measure similarity that isn't based on the vectors + // magnitude. We recommend using DOT_PRODUCT with unit normalized vectors + // instead of COSINE distance, which is mathematically equivalent with better + // performance. See [Cosine + // Similarity](https://en.wikipedia.org/wiki/Cosine_similarity) to learn more + // about COSINE similarity and COSINE distance. The resulting COSINE distance + // decreases the more similar two vectors are. + // "DOT_PRODUCT" - Similar to cosine but is affected by the magnitude of the + // vectors. See [Dot Product](https://en.wikipedia.org/wiki/Dot_product) to + // learn more. The resulting distance increases the more similar two vectors + // are. + DistanceMeasure string `json:"distanceMeasure,omitempty"` + // DistanceResultProperty: Optional. Optional name of the field to output the + // result of the vector distance calculation. Must conform to entity property + // limitations. + DistanceResultProperty string `json:"distanceResultProperty,omitempty"` + // DistanceThreshold: Optional. Option to specify a threshold for which no less + // similar documents will be returned. The behavior of the specified + // `distance_measure` will affect the meaning of the distance threshold. Since + // DOT_PRODUCT distances increase when the vectors are more similar, the + // comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance <= + // distance_threshold * For DOT_PRODUCT: WHERE distance >= distance_threshold + DistanceThreshold float64 `json:"distanceThreshold,omitempty"` + // Limit: Required. The number of nearest neighbors to return. Must be a + // positive integer of no more than 100. + Limit int64 `json:"limit,omitempty"` + // QueryVector: Required. The query vector that we are searching on. Must be a + // vector of no more than 2048 dimensions. + QueryVector *Value `json:"queryVector,omitempty"` + // VectorProperty: Required. An indexed vector property to search upon. Only + // documents which contain vectors whose dimensionality match the query_vector + // can be returned. + VectorProperty *PropertyReference `json:"vectorProperty,omitempty"` + // ForceSendFields is a list of field names (e.g. "DistanceMeasure") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "DistanceMeasure") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s FindNearest) MarshalJSON() ([]byte, error) { + type NoMethod FindNearest + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + +func (s *FindNearest) UnmarshalJSON(data []byte) error { + type NoMethod FindNearest + var s1 struct { + DistanceThreshold gensupport.JSONFloat64 `json:"distanceThreshold"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DistanceThreshold = float64(s1.DistanceThreshold) + return nil +} + // GoogleDatastoreAdminV1CommonMetadata: Metadata common to all Datastore Admin // operations. type GoogleDatastoreAdminV1CommonMetadata struct { @@ -2058,7 +2136,9 @@ func (s PropertyTransform) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } -// Query: A query for entities. +// Query: A query for entities. The query stages are executed in the following +// order: 1. kind 2. filter 3. projection 4. order + start_cursor + end_cursor +// 5. offset 6. limit 7. find_nearest type Query struct { // DistinctOn: The properties to make distinct. The query results will contain // the first result for each distinct combination of values for the given @@ -2072,6 +2152,10 @@ type Query struct { EndCursor string `json:"endCursor,omitempty"` // Filter: The filter to apply. Filter *Filter `json:"filter,omitempty"` + // FindNearest: Optional. A potential Nearest Neighbors Search. Applies after + // all other filters and ordering. Finds the closest vector embeddings to the + // given query vector. + FindNearest *FindNearest `json:"findNearest,omitempty"` // Kind: The kinds to query (if empty, returns entities of all kinds). // Currently at most 1 kind may be specified. Kind []*KindExpression `json:"kind,omitempty"` diff --git a/documentai/v1beta3/documentai-api.json b/documentai/v1beta3/documentai-api.json index 76c71247efc..0acf251ef84 100644 --- a/documentai/v1beta3/documentai-api.json +++ b/documentai/v1beta3/documentai-api.json @@ -1284,7 +1284,7 @@ } } }, - "revision": "20240911", + "revision": "20241025", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3AutoLabelDocumentsMetadata": { @@ -3004,6 +3004,16 @@ "name": { "description": "Dataset schema resource name. Format: `projects/{project}/locations/{location}/processors/{processor}/dataset/datasetSchema`", "type": "string" + }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" } }, "type": "object" diff --git a/documentai/v1beta3/documentai-gen.go b/documentai/v1beta3/documentai-gen.go index 24f06cdc39a..5017cb47537 100644 --- a/documentai/v1beta3/documentai-gen.go +++ b/documentai/v1beta3/documentai-gen.go @@ -2631,6 +2631,10 @@ type GoogleCloudDocumentaiV1beta3DatasetSchema struct { // `projects/{project}/locations/{location}/processors/{processor}/dataset/datas // etSchema` Name string `json:"name,omitempty"` + // SatisfiesPzi: Output only. Reserved for future use. + SatisfiesPzi bool `json:"satisfiesPzi,omitempty"` + // SatisfiesPzs: Output only. Reserved for future use. + SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` diff --git a/firestore/v1/firestore-api.json b/firestore/v1/firestore-api.json index fad19ee7852..a5dd57bc853 100644 --- a/firestore/v1/firestore-api.json +++ b/firestore/v1/firestore-api.json @@ -1711,7 +1711,7 @@ } } }, - "revision": "20240904", + "revision": "20241018", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2417,7 +2417,7 @@ "type": "string" }, "distanceThreshold": { - "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", + "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold * For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", "format": "double", "type": "number" }, @@ -4264,7 +4264,7 @@ "type": "object" }, "StructuredQuery": { - "description": "A Firestore query. The query stages are executed in the following order: 1. from 2. where 3. select 4. order_by + start_at + end_at 5. offset 6. limit", + "description": "A Firestore query. The query stages are executed in the following order: 1. from 2. where 3. select 4. order_by + start_at + end_at 5. offset 6. limit 7. find_nearest", "id": "StructuredQuery", "properties": { "endAt": { diff --git a/firestore/v1/firestore-gen.go b/firestore/v1/firestore-gen.go index 5dc594ed023..dab4cec9991 100644 --- a/firestore/v1/firestore-gen.go +++ b/firestore/v1/firestore-gen.go @@ -1383,8 +1383,8 @@ type FindNearest struct { // similar documents will be returned. The behavior of the specified // `distance_measure` will affect the meaning of the distance threshold. Since // DOT_PRODUCT distances increase when the vectors are more similar, the - // comparison is inverted. For EUCLIDEAN, COSINE: WHERE distance <= - // distance_threshold For DOT_PRODUCT: WHERE distance >= distance_threshold + // comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance <= + // distance_threshold * For DOT_PRODUCT: WHERE distance >= distance_threshold DistanceThreshold float64 `json:"distanceThreshold,omitempty"` // Limit: Required. The number of nearest neighbors to return. Must be a // positive integer of no more than 1000. @@ -3796,7 +3796,7 @@ func (s StructuredAggregationQuery) MarshalJSON() ([]byte, error) { // StructuredQuery: A Firestore query. The query stages are executed in the // following order: 1. from 2. where 3. select 4. order_by + start_at + end_at -// 5. offset 6. limit +// 5. offset 6. limit 7. find_nearest type StructuredQuery struct { // EndAt: A potential prefix of a position in the result set to end the query // at. This is similar to `START_AT` but with it controlling the end position diff --git a/firestore/v1beta1/firestore-api.json b/firestore/v1beta1/firestore-api.json index ba5f876cbe2..6dcd34e5d84 100644 --- a/firestore/v1beta1/firestore-api.json +++ b/firestore/v1beta1/firestore-api.json @@ -950,7 +950,7 @@ } } }, - "revision": "20240822", + "revision": "20241018", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -1656,7 +1656,7 @@ "type": "string" }, "distanceThreshold": { - "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", + "description": "Optional. Option to specify a threshold for which no less similar documents will be returned. The behavior of the specified `distance_measure` will affect the meaning of the distance threshold. Since DOT_PRODUCT distances increase when the vectors are more similar, the comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance \u003c= distance_threshold * For DOT_PRODUCT: WHERE distance \u003e= distance_threshold", "format": "double", "type": "number" }, @@ -2654,7 +2654,7 @@ "type": "object" }, "StructuredQuery": { - "description": "A Firestore query. The query stages are executed in the following order: 1. from 2. where 3. select 4. order_by + start_at + end_at 5. offset 6. limit", + "description": "A Firestore query. The query stages are executed in the following order: 1. from 2. where 3. select 4. order_by + start_at + end_at 5. offset 6. limit 7. find_nearest", "id": "StructuredQuery", "properties": { "endAt": { diff --git a/firestore/v1beta1/firestore-gen.go b/firestore/v1beta1/firestore-gen.go index 9302eeab73e..7b5f4079afd 100644 --- a/firestore/v1beta1/firestore-gen.go +++ b/firestore/v1beta1/firestore-gen.go @@ -1311,8 +1311,8 @@ type FindNearest struct { // similar documents will be returned. The behavior of the specified // `distance_measure` will affect the meaning of the distance threshold. Since // DOT_PRODUCT distances increase when the vectors are more similar, the - // comparison is inverted. For EUCLIDEAN, COSINE: WHERE distance <= - // distance_threshold For DOT_PRODUCT: WHERE distance >= distance_threshold + // comparison is inverted. * For EUCLIDEAN, COSINE: WHERE distance <= + // distance_threshold * For DOT_PRODUCT: WHERE distance >= distance_threshold DistanceThreshold float64 `json:"distanceThreshold,omitempty"` // Limit: Required. The number of nearest neighbors to return. Must be a // positive integer of no more than 1000. @@ -2648,7 +2648,7 @@ func (s StructuredAggregationQuery) MarshalJSON() ([]byte, error) { // StructuredQuery: A Firestore query. The query stages are executed in the // following order: 1. from 2. where 3. select 4. order_by + start_at + end_at -// 5. offset 6. limit +// 5. offset 6. limit 7. find_nearest type StructuredQuery struct { // EndAt: A potential prefix of a position in the result set to end the query // at. This is similar to `START_AT` but with it controlling the end position diff --git a/looker/v1/looker-api.json b/looker/v1/looker-api.json index a01975ae697..d3d2ee6c709 100644 --- a/looker/v1/looker-api.json +++ b/looker/v1/looker-api.json @@ -731,7 +731,7 @@ } } }, - "revision": "20240910", + "revision": "20241016", "rootUrl": "https://looker.googleapis.com/", "schemas": { "AdminSettings": { @@ -1636,22 +1636,22 @@ "id": "TimeOfDay", "properties": { "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", + "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.", "format": "int32", "type": "integer" }, "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", "format": "int32", "type": "integer" }, "seconds": { - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" } diff --git a/looker/v1/looker-gen.go b/looker/v1/looker-gen.go index 54b11e895a3..b776f8d5911 100644 --- a/looker/v1/looker-gen.go +++ b/looker/v1/looker-gen.go @@ -1436,16 +1436,19 @@ func (s TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { // significant or are specified elsewhere. An API may choose to allow leap // seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. type TimeOfDay struct { - // Hours: Hours of day in 24 hour format. Should be from 0 to 23. An API may - // choose to allow the value "24:00:00" for scenarios like business closing - // time. + // Hours: Hours of a day in 24 hour format. Must be greater than or equal to 0 + // and typically must be less than or equal to 23. An API may choose to allow + // the value "24:00:00" for scenarios like business closing time. Hours int64 `json:"hours,omitempty"` - // Minutes: Minutes of hour of day. Must be from 0 to 59. + // Minutes: Minutes of an hour. Must be greater than or equal to 0 and less + // than or equal to 59. Minutes int64 `json:"minutes,omitempty"` - // Nanos: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + // Nanos: Fractions of seconds, in nanoseconds. Must be greater than or equal + // to 0 and less than or equal to 999,999,999. Nanos int64 `json:"nanos,omitempty"` - // Seconds: Seconds of minutes of the time. Must normally be from 0 to 59. An - // API may allow the value 60 if it allows leap-seconds. + // Seconds: Seconds of a minute. Must be greater than or equal to 0 and + // typically must be less than or equal to 59. An API may allow the value 60 if + // it allows leap-seconds. Seconds int64 `json:"seconds,omitempty"` // ForceSendFields is a list of field names (e.g. "Hours") to unconditionally // include in API requests. By default, fields with empty or default values are diff --git a/texttospeech/v1/texttospeech-api.json b/texttospeech/v1/texttospeech-api.json index 6f9f38e5fad..5e7f4733319 100644 --- a/texttospeech/v1/texttospeech-api.json +++ b/texttospeech/v1/texttospeech-api.json @@ -318,7 +318,7 @@ } } }, - "revision": "20241008", + "revision": "20241026", "rootUrl": "https://texttospeech.googleapis.com/", "schemas": { "AdvancedVoiceOptions": { @@ -326,7 +326,7 @@ "id": "AdvancedVoiceOptions", "properties": { "lowLatencyJourneySynthesis": { - "description": "Only for Jounrney voices. If false, the synthesis will be context aware and have higher latency.", + "description": "Only for Journey voices. If false, the synthesis will be context aware and have higher latency.", "type": "boolean" } }, @@ -522,6 +522,20 @@ }, "type": "object" }, + "MultiSpeakerMarkup": { + "description": "A collection of turns for multi-speaker synthesis.", + "id": "MultiSpeakerMarkup", + "properties": { + "turns": { + "description": "Required. Speaker turns.", + "items": { + "$ref": "Turn" + }, + "type": "array" + } + }, + "type": "object" + }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -592,6 +606,10 @@ "$ref": "CustomPronunciations", "description": "Optional. The pronunciation customizations to be applied to the input. If this is set, the input will be synthesized using the given pronunciation customizations. The initial support will be for EFIGS (English, French, Italian, German, Spanish) languages, as provided in VoiceSelectionParams. Journey and Instant Clone voices are not supported yet. In order to customize the pronunciation of a phrase, there must be an exact match of the phrase in the input types. If using SSML, the phrase must not be inside a phoneme tag (entirely or partially)." }, + "multiSpeakerMarkup": { + "$ref": "MultiSpeakerMarkup", + "description": "The multi-speaker input to be synthesized. Only applicable for multi-speaker synthesis." + }, "ssml": { "description": "The SSML document to be synthesized. The SSML document must be valid and well-formed. Otherwise the RPC will fail and return google.rpc.Code.INVALID_ARGUMENT. For more information, see [SSML](https://cloud.google.com/text-to-speech/docs/ssml).", "type": "string" @@ -655,7 +673,7 @@ "properties": { "advancedVoiceOptions": { "$ref": "AdvancedVoiceOptions", - "description": "Adnanced voice options." + "description": "Advanced voice options." }, "audioConfig": { "$ref": "AudioConfig", @@ -684,6 +702,21 @@ }, "type": "object" }, + "Turn": { + "description": "A Multi-speaker turn.", + "id": "Turn", + "properties": { + "speaker": { + "description": "Required. The speaker of the turn, for example, 'O' or 'Q'. Please refer to documentation for available speakers.", + "type": "string" + }, + "text": { + "description": "Required. The text to speak.", + "type": "string" + } + }, + "type": "object" + }, "Voice": { "description": "Description of a voice supported by the TTS service.", "id": "Voice", @@ -723,6 +756,17 @@ }, "type": "object" }, + "VoiceCloneParams": { + "description": "The configuration of Voice Clone feature.", + "id": "VoiceCloneParams", + "properties": { + "voiceCloningKey": { + "description": "Required. Created by GenerateVoiceCloningKey.", + "type": "string" + } + }, + "type": "object" + }, "VoiceSelectionParams": { "description": "Description of which voice to use for a synthesis request.", "id": "VoiceSelectionParams", @@ -754,6 +798,10 @@ "A gender-neutral voice. This voice is not yet supported." ], "type": "string" + }, + "voiceClone": { + "$ref": "VoiceCloneParams", + "description": "Optional. The configuration for a voice clone. If [VoiceCloneParams.voice_clone_key] is set, the service will choose the voice clone matching the specified configuration." } }, "type": "object" diff --git a/texttospeech/v1/texttospeech-gen.go b/texttospeech/v1/texttospeech-gen.go index 8bb59a93731..38577322244 100644 --- a/texttospeech/v1/texttospeech-gen.go +++ b/texttospeech/v1/texttospeech-gen.go @@ -227,8 +227,8 @@ type VoicesService struct { // AdvancedVoiceOptions: Used for advanced voice options. type AdvancedVoiceOptions struct { - // LowLatencyJourneySynthesis: Only for Jounrney voices. If false, the - // synthesis will be context aware and have higher latency. + // LowLatencyJourneySynthesis: Only for Journey voices. If false, the synthesis + // will be context aware and have higher latency. LowLatencyJourneySynthesis bool `json:"lowLatencyJourneySynthesis,omitempty"` // ForceSendFields is a list of field names (e.g. "LowLatencyJourneySynthesis") // to unconditionally include in API requests. By default, fields with empty or @@ -537,6 +537,28 @@ func (s ListVoicesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// MultiSpeakerMarkup: A collection of turns for multi-speaker synthesis. +type MultiSpeakerMarkup struct { + // Turns: Required. Speaker turns. + Turns []*Turn `json:"turns,omitempty"` + // ForceSendFields is a list of field names (e.g. "Turns") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Turns") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s MultiSpeakerMarkup) MarshalJSON() ([]byte, error) { + type NoMethod MultiSpeakerMarkup + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // Operation: This resource represents a long-running operation that is the // result of a network API call. type Operation struct { @@ -631,6 +653,9 @@ type SynthesisInput struct { // exact match of the phrase in the input types. If using SSML, the phrase must // not be inside a phoneme tag (entirely or partially). CustomPronunciations *CustomPronunciations `json:"customPronunciations,omitempty"` + // MultiSpeakerMarkup: The multi-speaker input to be synthesized. Only + // applicable for multi-speaker synthesis. + MultiSpeakerMarkup *MultiSpeakerMarkup `json:"multiSpeakerMarkup,omitempty"` // Ssml: The SSML document to be synthesized. The SSML document must be valid // and well-formed. Otherwise the RPC will fail and return // google.rpc.Code.INVALID_ARGUMENT. For more information, see SSML @@ -733,7 +758,7 @@ func (s SynthesizeLongAudioRequest) MarshalJSON() ([]byte, error) { // SynthesizeSpeechRequest: The top-level message sent by the client for the // `SynthesizeSpeech` method. type SynthesizeSpeechRequest struct { - // AdvancedVoiceOptions: Adnanced voice options. + // AdvancedVoiceOptions: Advanced voice options. AdvancedVoiceOptions *AdvancedVoiceOptions `json:"advancedVoiceOptions,omitempty"` // AudioConfig: Required. The configuration of the synthesized audio. AudioConfig *AudioConfig `json:"audioConfig,omitempty"` @@ -790,6 +815,31 @@ func (s SynthesizeSpeechResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// Turn: A Multi-speaker turn. +type Turn struct { + // Speaker: Required. The speaker of the turn, for example, 'O' or 'Q'. Please + // refer to documentation for available speakers. + Speaker string `json:"speaker,omitempty"` + // Text: Required. The text to speak. + Text string `json:"text,omitempty"` + // ForceSendFields is a list of field names (e.g. "Speaker") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Speaker") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s Turn) MarshalJSON() ([]byte, error) { + type NoMethod Turn + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // Voice: Description of a voice supported by the TTS service. type Voice struct { // LanguageCodes: The languages that this voice supports, expressed as BCP-47 @@ -830,6 +880,28 @@ func (s Voice) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// VoiceCloneParams: The configuration of Voice Clone feature. +type VoiceCloneParams struct { + // VoiceCloningKey: Required. Created by GenerateVoiceCloningKey. + VoiceCloningKey string `json:"voiceCloningKey,omitempty"` + // ForceSendFields is a list of field names (e.g. "VoiceCloningKey") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "VoiceCloningKey") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s VoiceCloneParams) MarshalJSON() ([]byte, error) { + type NoMethod VoiceCloneParams + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // VoiceSelectionParams: Description of which voice to use for a synthesis // request. type VoiceSelectionParams struct { @@ -869,6 +941,10 @@ type VoiceSelectionParams struct { // "FEMALE" - A female voice. // "NEUTRAL" - A gender-neutral voice. This voice is not yet supported. SsmlGender string `json:"ssmlGender,omitempty"` + // VoiceClone: Optional. The configuration for a voice clone. If + // [VoiceCloneParams.voice_clone_key] is set, the service will choose the voice + // clone matching the specified configuration. + VoiceClone *VoiceCloneParams `json:"voiceClone,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomVoice") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See diff --git a/texttospeech/v1beta1/texttospeech-api.json b/texttospeech/v1beta1/texttospeech-api.json index 5b14029b01b..77169025a57 100644 --- a/texttospeech/v1beta1/texttospeech-api.json +++ b/texttospeech/v1beta1/texttospeech-api.json @@ -261,7 +261,7 @@ } } }, - "revision": "20241008", + "revision": "20241026", "rootUrl": "https://texttospeech.googleapis.com/", "schemas": { "AdvancedVoiceOptions": { @@ -269,7 +269,7 @@ "id": "AdvancedVoiceOptions", "properties": { "lowLatencyJourneySynthesis": { - "description": "Only for Jounrney voices. If false, the synthesis will be context aware and have higher latency.", + "description": "Only for Journey voices. If false, the synthesis will be context aware and have higher latency.", "type": "boolean" } }, @@ -455,6 +455,20 @@ }, "type": "object" }, + "MultiSpeakerMarkup": { + "description": "A collection of turns for multi-speaker synthesis.", + "id": "MultiSpeakerMarkup", + "properties": { + "turns": { + "description": "Required. Speaker turns.", + "items": { + "$ref": "Turn" + }, + "type": "array" + } + }, + "type": "object" + }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -525,6 +539,10 @@ "$ref": "CustomPronunciations", "description": "Optional. The pronunciation customizations to be applied to the input. If this is set, the input will be synthesized using the given pronunciation customizations. The initial support will be for EFIGS (English, French, Italian, German, Spanish) languages, as provided in VoiceSelectionParams. Journey and Instant Clone voices are not supported yet. In order to customize the pronunciation of a phrase, there must be an exact match of the phrase in the input types. If using SSML, the phrase must not be inside a phoneme tag (entirely or partially)." }, + "multiSpeakerMarkup": { + "$ref": "MultiSpeakerMarkup", + "description": "The multi-speaker input to be synthesized. Only applicable for multi-speaker synthesis." + }, "ssml": { "description": "The SSML document to be synthesized. The SSML document must be valid and well-formed. Otherwise the RPC will fail and return google.rpc.Code.INVALID_ARGUMENT. For more information, see [SSML](https://cloud.google.com/text-to-speech/docs/ssml).", "type": "string" @@ -588,7 +606,7 @@ "properties": { "advancedVoiceOptions": { "$ref": "AdvancedVoiceOptions", - "description": "Adnanced voice options." + "description": "Advanced voice options." }, "audioConfig": { "$ref": "AudioConfig", @@ -659,6 +677,21 @@ }, "type": "object" }, + "Turn": { + "description": "A Multi-speaker turn.", + "id": "Turn", + "properties": { + "speaker": { + "description": "Required. The speaker of the turn, for example, 'O' or 'Q'. Please refer to documentation for available speakers.", + "type": "string" + }, + "text": { + "description": "Required. The text to speak.", + "type": "string" + } + }, + "type": "object" + }, "Voice": { "description": "Description of a voice supported by the TTS service.", "id": "Voice", @@ -698,6 +731,17 @@ }, "type": "object" }, + "VoiceCloneParams": { + "description": "The configuration of Voice Clone feature.", + "id": "VoiceCloneParams", + "properties": { + "voiceCloningKey": { + "description": "Required. Created by GenerateVoiceCloningKey.", + "type": "string" + } + }, + "type": "object" + }, "VoiceSelectionParams": { "description": "Description of which voice to use for a synthesis request.", "id": "VoiceSelectionParams", @@ -729,6 +773,10 @@ "A gender-neutral voice. This voice is not yet supported." ], "type": "string" + }, + "voiceClone": { + "$ref": "VoiceCloneParams", + "description": "Optional. The configuration for a voice clone. If [VoiceCloneParams.voice_clone_key] is set, the service will choose the voice clone matching the specified configuration." } }, "type": "object" diff --git a/texttospeech/v1beta1/texttospeech-gen.go b/texttospeech/v1beta1/texttospeech-gen.go index 4dd0ed4978b..a6e7dfab30a 100644 --- a/texttospeech/v1beta1/texttospeech-gen.go +++ b/texttospeech/v1beta1/texttospeech-gen.go @@ -215,8 +215,8 @@ type VoicesService struct { // AdvancedVoiceOptions: Used for advanced voice options. type AdvancedVoiceOptions struct { - // LowLatencyJourneySynthesis: Only for Jounrney voices. If false, the - // synthesis will be context aware and have higher latency. + // LowLatencyJourneySynthesis: Only for Journey voices. If false, the synthesis + // will be context aware and have higher latency. LowLatencyJourneySynthesis bool `json:"lowLatencyJourneySynthesis,omitempty"` // ForceSendFields is a list of field names (e.g. "LowLatencyJourneySynthesis") // to unconditionally include in API requests. By default, fields with empty or @@ -513,6 +513,28 @@ func (s ListVoicesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// MultiSpeakerMarkup: A collection of turns for multi-speaker synthesis. +type MultiSpeakerMarkup struct { + // Turns: Required. Speaker turns. + Turns []*Turn `json:"turns,omitempty"` + // ForceSendFields is a list of field names (e.g. "Turns") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Turns") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s MultiSpeakerMarkup) MarshalJSON() ([]byte, error) { + type NoMethod MultiSpeakerMarkup + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // Operation: This resource represents a long-running operation that is the // result of a network API call. type Operation struct { @@ -607,6 +629,9 @@ type SynthesisInput struct { // exact match of the phrase in the input types. If using SSML, the phrase must // not be inside a phoneme tag (entirely or partially). CustomPronunciations *CustomPronunciations `json:"customPronunciations,omitempty"` + // MultiSpeakerMarkup: The multi-speaker input to be synthesized. Only + // applicable for multi-speaker synthesis. + MultiSpeakerMarkup *MultiSpeakerMarkup `json:"multiSpeakerMarkup,omitempty"` // Ssml: The SSML document to be synthesized. The SSML document must be valid // and well-formed. Otherwise the RPC will fail and return // google.rpc.Code.INVALID_ARGUMENT. For more information, see SSML @@ -709,7 +734,7 @@ func (s SynthesizeLongAudioRequest) MarshalJSON() ([]byte, error) { // SynthesizeSpeechRequest: The top-level message sent by the client for the // `SynthesizeSpeech` method. type SynthesizeSpeechRequest struct { - // AdvancedVoiceOptions: Adnanced voice options. + // AdvancedVoiceOptions: Advanced voice options. AdvancedVoiceOptions *AdvancedVoiceOptions `json:"advancedVoiceOptions,omitempty"` // AudioConfig: Required. The configuration of the synthesized audio. AudioConfig *AudioConfig `json:"audioConfig,omitempty"` @@ -820,6 +845,31 @@ func (s *Timepoint) UnmarshalJSON(data []byte) error { return nil } +// Turn: A Multi-speaker turn. +type Turn struct { + // Speaker: Required. The speaker of the turn, for example, 'O' or 'Q'. Please + // refer to documentation for available speakers. + Speaker string `json:"speaker,omitempty"` + // Text: Required. The text to speak. + Text string `json:"text,omitempty"` + // ForceSendFields is a list of field names (e.g. "Speaker") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Speaker") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s Turn) MarshalJSON() ([]byte, error) { + type NoMethod Turn + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // Voice: Description of a voice supported by the TTS service. type Voice struct { // LanguageCodes: The languages that this voice supports, expressed as BCP-47 @@ -860,6 +910,28 @@ func (s Voice) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// VoiceCloneParams: The configuration of Voice Clone feature. +type VoiceCloneParams struct { + // VoiceCloningKey: Required. Created by GenerateVoiceCloningKey. + VoiceCloningKey string `json:"voiceCloningKey,omitempty"` + // ForceSendFields is a list of field names (e.g. "VoiceCloningKey") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "VoiceCloningKey") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s VoiceCloneParams) MarshalJSON() ([]byte, error) { + type NoMethod VoiceCloneParams + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // VoiceSelectionParams: Description of which voice to use for a synthesis // request. type VoiceSelectionParams struct { @@ -899,6 +971,10 @@ type VoiceSelectionParams struct { // "FEMALE" - A female voice. // "NEUTRAL" - A gender-neutral voice. This voice is not yet supported. SsmlGender string `json:"ssmlGender,omitempty"` + // VoiceClone: Optional. The configuration for a voice clone. If + // [VoiceCloneParams.voice_clone_key] is set, the service will choose the voice + // clone matching the specified configuration. + VoiceClone *VoiceCloneParams `json:"voiceClone,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomVoice") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See diff --git a/travelimpactmodel/v1/travelimpactmodel-api.json b/travelimpactmodel/v1/travelimpactmodel-api.json index 29eb1f3d632..e2c075395d1 100644 --- a/travelimpactmodel/v1/travelimpactmodel-api.json +++ b/travelimpactmodel/v1/travelimpactmodel-api.json @@ -116,7 +116,7 @@ } } }, - "revision": "20231011", + "revision": "20241027", "rootUrl": "https://travelimpactmodel.googleapis.com/", "schemas": { "ComputeFlightEmissionsRequest": { @@ -234,7 +234,7 @@ "properties": { "emissionsGramsPerPax": { "$ref": "EmissionsGramsPerPax", - "description": "Optional. Per-passenger emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see ComputeFlightEmissions. Note this field is currently equivalent to ttw_emissions_grams_per_pax until TIM version 1.X.0 which will update this to be total wtw emissions aka wtt_emissions_grams_per_pax + ttw_emissions_grams_per_pax." + "description": "Optional. Per-passenger emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see ComputeFlightEmissions. This field uses wtw emissions aka ttw_emissions_grams_per_pax + wtt_emissions_grams_per_pax." }, "flight": { "$ref": "Flight", diff --git a/travelimpactmodel/v1/travelimpactmodel-gen.go b/travelimpactmodel/v1/travelimpactmodel-gen.go index 305bf90b84e..22b87768e3e 100644 --- a/travelimpactmodel/v1/travelimpactmodel-gen.go +++ b/travelimpactmodel/v1/travelimpactmodel-gen.go @@ -314,9 +314,8 @@ type FlightWithEmissions struct { // EmissionsGramsPerPax: Optional. Per-passenger emission estimate numbers. // Will not be present if emissions could not be computed. For the list of // reasons why emissions could not be computed, see ComputeFlightEmissions. - // Note this field is currently equivalent to ttw_emissions_grams_per_pax until - // TIM version 1.X.0 which will update this to be total wtw emissions aka - // wtt_emissions_grams_per_pax + ttw_emissions_grams_per_pax. + // This field uses wtw emissions aka ttw_emissions_grams_per_pax + + // wtt_emissions_grams_per_pax. EmissionsGramsPerPax *EmissionsGramsPerPax `json:"emissionsGramsPerPax,omitempty"` // Flight: Required. Matches the flight identifiers in the request. Note: all // IATA codes are capitalized.