> For the complete documentation index, see [llms.txt](https://docs.fact-finder.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fact-finder.com/integration/factfinder-search-integration/factfinder-search-syntax.md).

# FactFinder Search syntax

The search server supports a rich query syntax and several request parameters that help refine search behavior and results.

## Exact search

Prefixing a term with a plus sign `+` forces an exact match for that term. If the term is a phrase, enclose it in quotation marks `""` to search for the exact phrase.

For example:

* `+exact` searches for the term "exact" in its exact form.
* `"exact phrase"` searches for the entire phrase "exact phrase" exactly as written.

The `+` operator affects only the word immediately following it. Quotation marks `""` make everything inside the quotes match exactly. This is useful for article numbers or other known exact strings that should not be matched fuzzily.

## Excluding terms

Prefixing a term with a minus sign (`-`) **excludes** results that contain that term.

For example:

* `search term -excludedWord` returns results for "search term" but omits any result that includes "excludedWord".
* `search -excludedWord term` returns the same results as the query above, because the `-` operator only affects the term directly after it.

If you want to exclude multiple words, prefix each one with a minus sign `-`:

`search term -unwantedWord1 -unwantedWord2`

## Wildcards

FactFinder Search supports the wildcard characters `?` and `*` within search terms. A question mark (`?`) stands for one arbitrary character. An asterisk (`*`) stands for any number of characters, including zero.

For example:

* `search?term` matches any single character in place of the `?`, such as "search term" or "search1term".
* `search*` matches any extension of "search", such as "searching", "searchTerm", or "search".
* `*term` can match any ending with "term", such as "longterm" or "term".
* `*earch*` matches any string that contains "earch", such as "searchterm" or "researcher".
* `?rch*` matches any string where one character comes before "rch", followed by any continuation.

> When the search term contains a wildcard character, FactFinder fault tolerance and spell correction are disabled for the entire query. In other words, once a wildcard is used, all terms in that query are treated as literal strings.
>
> For example:
>
> Normally, a query for "search term" might tolerate minor spelling errors. But the query `search ?erm` treats "search" and "?erm" as exact patterns to match. Use wildcards carefully and only when you need pattern matching.

When you use `*` at the beginning or end of a word, the search tries to match from the edges of the word. For example, `sea*rm` matches "searchterm" because the pattern starts with "sea" and ends with "rm". It does not match "sea storm" because `*` does not cross word boundaries that way.

There are also some restrictions when you combine wildcards with other operators. `+`, `-`, and quotation marks cannot be used on the *same word* that contains a wildcard. For example, `+exact*` is not a valid query. Different operators can still be combined across different words. For example, `+exact -exclude sea*term` is valid. Wildcards also cannot be used inside a quoted phrase.

## Combining search terms

FactFinder Search lets you combine multiple terms with boolean `OR` and `AND` operators for more complex queries:

* Use `||` (double vertical bars) to combine terms with a logical **OR**. Results containing either term are returned. For example, `Trousers || Jacket` finds results that contain "Trousers" or "Jacket".
* Use `&&` (double ampersands) to combine terms with a logical **AND**. Only results containing **all** specified terms are returned. For example, `Trousers && Jeans` returns results that contain both "Trousers" and "Jeans".

The combine operators are evaluated from left to right. There are no precedence rules. Parentheses are not supported.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.fact-finder.com/integration/factfinder-search-integration/factfinder-search-syntax.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
