# Filter

<figure><img src="/files/Jp5uV7phlKyMULddmxIs" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/zy18LBTCgDf9qyFLcfaw" alt=""><figcaption></figcaption></figure>

## Description <a href="#description" id="description"></a>

**What it does: Filter** evaluates one or more conditions and lets the workflow continue only if the conditions pass.\
Unlike **Branch**, it does not create multiple paths; it’s a single **gate** in your flow.

Use **Filter** when you need a yes/no checkpoint (e.g., “only proceed for paid users”, “skip if file isn’t PDF”, “run when score ≥ 0.8”).\
Use **Branch** when you need different actions for different outcomes.\
\
Add more rules with **+ And** (all must pass) or group alternatives with **+ Or Group** (any group that passes allows continuation).

## Component settings <a href="#component-settings" id="component-settings"></a>

### Tab "Config"

<table><thead><tr><th width="299.359375">Parameter Name</th><th>Description</th></tr></thead><tbody><tr><td>Only continue if</td><td><p>Build one or more rules. A rule consists of:</p><ul><li><strong>Field</strong>: pick an upstream value via <strong>@</strong> (or select from the dropdown).</li></ul></td></tr><tr><td>Choose condition</td><td><p>Choose an operator<br></p><ul><li>(Text) Contains</li><li>(Text) Does not contain</li><li>(Text) Exactly matches</li><li>(Text) Does not exactly match</li><li>(Text) Is in</li><li>(Text) Is not in</li><li>(Text) Starts with</li><li>(Text) Does not start with</li><li>(Text) Ends with</li><li>(Text) Does not end with</li><li>(File format) Are</li><li>(Number) Equals</li><li>(Number) Greater than</li><li>(Number) Less than</li><li>(Date/time) Equal</li><li>(Date/time) After</li><li>(Date/time) Before</li><li>(Boolean) Is true</li><li>(Boolean) Is false</li><li>Exists</li><li>Does not exists</li><li>Is Null</li><li>Is Not Null</li></ul></td></tr><tr><td>Value</td><td><p>Only available for Text, File format, Number and Date/time.<br></p><p>This allows you to enter a text, a number or a date/time.</p></td></tr></tbody></table>

### Tab "Preview"

Use **Preview** to test your rule set against example inputs from recent runs.

* True → the flow continues to the next node.
* **False** → the run stops at Filter (no error; it is intentionally gated).

## Advanced configurations <a href="#advanced-configurations" id="advanced-configurations"></a>

This component has no advanced configurations.

## Use case

Filter - Allow flow run if "Field" contains value = 2

* Only continue if = @ trigger.field
* Condition = (Text) Contains
* Value = 2

Set up at the "Filter" node

<figure><img src="/files/mM0E8givgd1xlnv4wadF" alt=""><figcaption></figcaption></figure>

The result:

* (1) When Field = 3 -> false

<figure><img src="/files/xTkeFU9hOoAlvxKpI5SE" alt=""><figcaption></figcaption></figure>

* (2) When Field = 2 -> True

<figure><img src="/files/rABhsBirgjSGiia0HKta" alt=""><figcaption></figcaption></figure>

<br>


---

# 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.diaflow.io/workflow-builder/nodes/built-in-tools/filter.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.
