Skip to main content
Finds items by metadata alone, with no query vector. QueryMetadata resolves the filter against the encrypted metadata index and returns the matching IDs. With Text, it also ranks matches by BM25 relevance. It works on untrained indexes.

Parameters

QueryMetadataParams

  • Without OrderBy or Text, results come back in no particular order.
  • Items missing the OrderBy field, or holding a non-scalar value in it, sort last.

Filter constraints

Query falls back to a post-filter over decrypted metadata when the index can’t answer a filter, for pure vector queries. QueryMetadata has no fallback, so every filter must be answerable from the index. The index’s MetadataSchema is therefore enforced here:
  • $regex and $contains need a field created with Pattern true.
  • A field created with Filterable false can’t be filtered on.
  • $type isn’t supported.
Any of these returns a *ValidationError (HTTP 400) with the reason. Nested dot-paths such as "loc.city" are supported.

Returns

*QueryMetadataResponse:

Errors

The service rejects the query (HTTP 400): see Filter constraints.
The apiKey is invalid (HTTP 401).
The service returns 5xx or can’t be reached.
See Errors.

Example Usage

Filter only

Operators and a result cap

Sorted by a field

Regex match

For filter syntax and operators, see Metadata filtering.