searchFeatures method
Searches Features matching a query in a given project.
Request parameters:
location
- Required. The resource name of the Location to search
Features. Format: projects/{project}/locations/{location}
Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$
.
pageSize
- The maximum number of Features to return. The service may
return fewer than this value. If unspecified, at most 100 Features will be
returned. The maximum value is 100; any value greater than 100 will be
coerced to 100.
pageToken
- A page token, received from a previous
FeaturestoreService.SearchFeatures call. Provide this to retrieve the
subsequent page. When paginating, all other parameters provided to
FeaturestoreService.SearchFeatures, except page_size
, must match the
call that provided the page token.
query
- Query string that is a conjunction of field-restricted queries
and/or field-restricted filters. Field-restricted queries and filters can
be combined using AND
to form a conjunction. A field query is in the
form FIELD:QUERY. This implicitly checks if QUERY exists as a substring
within Feature's FIELD. The QUERY and the FIELD are converted to a
sequence of words (i.e. tokens) for comparison. This is done by: *
Removing leading/trailing whitespace and tokenizing the search value.
Characters that are not one of alphanumeric [a-zA-Z0-9]
, underscore _
,
or asterisk *
are treated as delimiters for tokens. *
is treated as a
wildcard that matches characters within a token. * Ignoring case. *
Prepending an asterisk to the first and appending an asterisk to the last
token in QUERY. A QUERY must be either a singular token or a phrase. A
phrase is one or multiple words enclosed in double quotation marks (").
With phrases, the order of the words is important. Words in the phrase
must be matching in order and consecutively. Supported FIELDs for
field-restricted queries: * feature_id
* description
*
entity_type_id
Examples: * feature_id: foo
--> Matches a Feature with
ID containing the substring foo
(eg. foo
, foofeature
, barfoo
). *
feature_id: foo*feature
--> Matches a Feature with ID containing the
substring foo*feature
(eg. foobarfeature
). * feature_id: foo AND description: bar
--> Matches a Feature with ID containing the substring
foo
and description containing the substring bar
. Besides field
queries, the following exact-match filters are supported. The exact-match
filters do not support wildcards. Unlike field-restricted queries,
exact-match filters are case-sensitive. * feature_id
: Supports =
comparisons. * description
: Supports = comparisons. Multi-token filters
should be enclosed in quotes. * entity_type_id
: Supports = comparisons.
value_type
: Supports = and != comparisons. *labels
: Supports key-value equality as well as key presence. *featurestore_id
: Supports = comparisons. Examples: *description = "foo bar"
--> Any Feature with description exactly equal tofoo bar
*value_type = DOUBLE
--> Features whose type is DOUBLE. *labels.active = yes AND labels.env = prod
--> Features having both (active: yes) and (env: prod) labels. *labels.env: *
--> Any Feature which has a label withenv
as the key.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a GoogleCloudAiplatformV1SearchFeaturesResponse.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client
completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<GoogleCloudAiplatformV1SearchFeaturesResponse> searchFeatures(
core.String location, {
core.int? pageSize,
core.String? pageToken,
core.String? query,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (pageSize != null) 'pageSize': ['${pageSize}'],
if (pageToken != null) 'pageToken': [pageToken],
if (query != null) 'query': [query],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' +
core.Uri.encodeFull('$location') +
'/featurestores:searchFeatures';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return GoogleCloudAiplatformV1SearchFeaturesResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}