# Advanced Filtering

Advanced filtering can be used on `/batch` and `/auto` (and [monitors](/features/core-features/monitors.md) created on the web) to conditionally select what threads to watch or unwatch.&#x20;

Only threads that match **ALL** of the selected filters will be watched. Do note that if no value is configured for a filter (such as roles) that filter will be skipped.&#x20;

### Roles

Select one or more roles that the owner of the thread must have for Thread-Watcher to watch the thread.

### Tags

Select one or more forum tags that the post must have for Thread-Watcher to watch it. \ <sub><mark style="color:$info;">This is only accessible for forum channels<mark style="color:$info;"></sub>&#x20;

### Regex

You can use a [regex](https://en.wikipedia.org/wiki/Regular_expression) to select only threads whose name follow a certain pattern. More text needs to be added here tbh. Gotta do boring doc work before launching V3

#### Rejected Regex

To protect the bot from [ReDos](https://en.wikipedia.org/wiki/ReDoS) attacks we proactively screen any regex inputs. This might unfortunately erroneously catch some valid regex patterns.


---

# Agent Instructions: 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:

```
GET https://docs.threadwatcher.xyz/features/core-features/advanced-filtering.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
