The terms enum API can be used to discover terms in the index that match
a partial string. Supported field types are keyword
,
constant_keyword
and
flattened
. This is used for auto-complete:
POST stackoverflow/_terms_enum { "field" : "tags", "string" : "kiba" }
The API returns the following response:
{ "_shards": { "total": 1, "successful": 1, "failed": 0 }, "terms": [ "kibana" ], "complete" : true }
If the complete
flag is false
, the returned terms
set may be incomplete
and should be treated as approximate. This can occur due to a few reasons, such
as a request timeout or a node error.
The terms_enum API can be used to discover terms in the index that begin with the provided string. It is designed for low-latency look-ups used in auto-complete scenarios.
-
<target>
-
(Required, string) Comma-separated list of data streams, indices, and aliases
to search. Supports wildcards (
*
). To search all data streams or indices, omit this parameter or use*
or_all
.
-
string
- (Optional, string) The string to match at the start of indexed terms. If not provided, all terms in the field are considered.
-
timeout
-
(Optional, time value)
The maximum length of time to spend collecting results. Defaults to "1s" (one second).
If the timeout is exceeded the
complete
flag set to false in the response and the results may be partial or empty.
-
case_insensitive
- (Optional, boolean) When true the provided search string is matched against index terms without case sensitivity. Defaults to false.
-
index_filter
-
(Optional, query object Allows to filter an index shard if the provided
query rewrites to
match_none
.