#[non_exhaustive]pub struct CompleteQueryRequest {
pub catalog: String,
pub query: String,
pub visitor_id: String,
pub language_codes: Vec<String>,
pub device_type: String,
pub dataset: String,
pub max_suggestions: i32,
pub enable_attribute_suggestions: bool,
pub entity: String,
/* private fields */
}Expand description
Autocomplete parameters.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.catalog: StringRequired. Catalog for which the completion is performed.
Full resource name of catalog, such as
projects/*/locations/global/catalogs/default_catalog.
query: StringRequired. The query used to generate suggestions.
The maximum number of allowed characters is 255.
visitor_id: StringRecommended field. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website.
The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
language_codes: Vec<String>Note that this field applies for user-data dataset only. For requests
with cloud-retail dataset, setting this field has no effect.
The language filters applied to the output suggestions. If set, it should contain the language of the query. If not set, suggestions are returned without considering language restrictions. This is the BCP-47 language code, such as “en-US” or “sr-Latn”. For more information, see Tags for Identifying Languages. The maximum number of language codes is 3.
device_type: StringThe device type context for completion suggestions. We recommend that you leave this field empty.
It can apply different suggestions on different device types, e.g.
DESKTOP, MOBILE. If it is empty, the suggestions are across all device
types.
Supported formats:
-
UNKNOWN_DEVICE_TYPE -
DESKTOP -
MOBILE -
A customized string starts with
OTHER_, e.g.OTHER_IPHONE.
dataset: StringDetermines which dataset to use for fetching completion. “user-data” will
use the dataset imported through
CompletionService.ImportCompletionData.
cloud-retail will use the dataset generated by Cloud Retail based on user
events. If left empty, completions will be fetched from the user-data
dataset.
Current supported values:
-
user-data
-
cloud-retail: This option requires enabling auto-learning function first. See guidelines.
max_suggestions: i32Completion max suggestions. If left unset or set to 0, then will fallback to the configured value CompletionConfig.max_suggestions.
The maximum allowed max suggestions is 20. If it is set higher, it will be capped by 20.
enable_attribute_suggestions: boolIf true, attribute suggestions are enabled and provided in the response.
This field is only available for the cloud-retail dataset.
entity: StringThe entity for customers who run multiple entities, domains, sites, or
regions, for example, Google US, Google Ads, Waymo,
google.com, youtube.com, etc.
If this is set, it must be an exact match with
UserEvent.entity to get
per-entity autocomplete results. This field will be applied to
completion_results only. It has no effect on the attribute_results.
Also, this entity should be limited to 256 characters, if too long, it will
be truncated to 256 characters in both generation and serving time, and may
lead to mis-match. To ensure it works, please set the entity with string
within 256 characters.
Implementations§
Source§impl CompleteQueryRequest
impl CompleteQueryRequest
pub fn new() -> Self
Sourcepub fn set_catalog<T: Into<String>>(self, v: T) -> Self
pub fn set_catalog<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_visitor_id<T: Into<String>>(self, v: T) -> Self
pub fn set_visitor_id<T: Into<String>>(self, v: T) -> Self
Sets the value of visitor_id.
§Example
let x = CompleteQueryRequest::new().set_visitor_id("example");Sourcepub fn set_language_codes<T, V>(self, v: T) -> Self
pub fn set_language_codes<T, V>(self, v: T) -> Self
Sets the value of language_codes.
§Example
let x = CompleteQueryRequest::new().set_language_codes(["a", "b", "c"]);Sourcepub fn set_device_type<T: Into<String>>(self, v: T) -> Self
pub fn set_device_type<T: Into<String>>(self, v: T) -> Self
Sets the value of device_type.
§Example
let x = CompleteQueryRequest::new().set_device_type("example");Sourcepub fn set_dataset<T: Into<String>>(self, v: T) -> Self
pub fn set_dataset<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_max_suggestions<T: Into<i32>>(self, v: T) -> Self
pub fn set_max_suggestions<T: Into<i32>>(self, v: T) -> Self
Sets the value of max_suggestions.
§Example
let x = CompleteQueryRequest::new().set_max_suggestions(42);Sourcepub fn set_enable_attribute_suggestions<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_attribute_suggestions<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_attribute_suggestions.
§Example
let x = CompleteQueryRequest::new().set_enable_attribute_suggestions(true);Trait Implementations§
Source§impl Clone for CompleteQueryRequest
impl Clone for CompleteQueryRequest
Source§fn clone(&self) -> CompleteQueryRequest
fn clone(&self) -> CompleteQueryRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more