Skip to content

AutoRAG API filter format

This page documents the filter format used by the legacy AutoRAG REST API. For the new AI Search REST API filter syntax, refer to Metadata filtering.

Comparison filter

Compare a metadata attribute (for example, folder or timestamp) with a target value:

JavaScript
filters: {
type: "eq",
key: "folder",
value: "customer-a/"
}

Operators

OperatorDescription
eqEquals
neNot equals
gtGreater than
gteGreater than or equal to
ltLess than
lteLess than or equal to

Compound filter

Combine multiple comparison filters with a logical operator:

JavaScript
filters: {
type: "and",
filters: [
{ type: "eq", key: "folder", value: "customer-a/" },
{ type: "gte", key: "timestamp", value: "1735689600000" }
]
}

The available compound operators are and and or.

Limitations

  • No nested combinations of and and or. You can only use one compound operator at a time.
  • When using or, only the eq operator is allowed and all conditions must filter on the same key.

"Starts with" filter for folders

To filter for all files within a folder and its subfolders, use a compound filter with range operators.

For example, consider this file structure:

  • Directorycustomer-a
    • profile.md
    • Directorycontracts
      • Directoryproperty
        • contract-1.pdf

Using { type: "eq", key: "folder", value: "customer-a/" } only matches files directly in that folder (like profile.md), not files in subfolders.

To match all files starting with customer-a/, use a compound filter:

JavaScript
filters: {
type: "and",
filters: [
{ type: "gt", key: "folder", value: "customer-a//" },
{ type: "lte", key: "folder", value: "customer-a/z" }
]
}

This filter matches all paths starting with customer-a/ by using:

  • gt with customer-a// to include paths greater than the / ASCII character
  • lte with customer-a/z to include paths up to and including the lowercase z ASCII character