> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jsmon.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Filters

Filters let you hide values you don't care about from your results. You choose a field, such as Emails or Domains, and enter a regex pattern. Any value in that field that matches the pattern is hidden when you open the matching section in Jsmon.

Use filters to remove placeholder data, third-party services and other noise that shows up in almost every scan, so the findings that matter are easier to spot.

> [!NOTE]
>
> Filters only change what you see. Your scan data is not deleted, and turning a filter off brings the hidden values back right away.

## How Filters Work

Each filter has three parts:

| Setting | Description |
| - | - |
| **Field** | The type of result the filter applies to, such as Emails, Extracted URLs or Domains |
| **Regex Pattern** | A regular expression. Values in the selected field that match it are hidden |
| **Applies To** | **This workspace** applies the filter to the current workspace only. **All workspaces** applies it to every workspace you have access to |

A field can have more than one filter. A value is hidden if it matches any enabled filter for its field.

## Supported Fields

| Field | Hides values in |
| - | - |
| **Emails** | Reconnaissance → Emails |
| **Extracted URLs** | URLs extracted from scanned files |
| **Scanned URLs** | The list of scannedScript files that were scanned |
| **Domains** | Reconnaissance → Domains |
| **URLs** | Reconnaissance → URLs |
| **IP Addresses** | Reconnaissance → IP Addresses |
| **Keys & Secrets** | Keys & Secrets results |
| **GUIDs** | Reconnaissance → GUIDs |
| **20+ fields** | **Reconnaissance, Scans and Secrets** |

The **Field** dropdown on the Filters page lists every field you can filter.

## Creating a Filter

**1. Open Filters**

Select **Filters** in the left sidebar.

**2. Choose a field**

In **Create a filter**, pick the field you want to filter from the **Field** dropdown.

**3. Enter a regex pattern**

Type your pattern in **Regex Pattern**. Use `|` to match several values in one filter, for example `example\.com|mail\.com|test\.com`.

**4. Choose where it applies**

Select **This workspace** or **All workspaces** under **Applies To**.

**5. Add the filter**

Click **Add filter**. The filter is enabled straight away and appears in the list below.

> [!TIP]
>
> Escape dots with a backslash (`example\.com`). An unescaped `.` matches any character, so `example.com` would also match `exampleXcom`.

## Managing Filters

All filters are listed under the **Create a filter** form.

| Column | Description |
| - | - |
| **Field** | The field the filter applies to |
| **Regex Pattern** | The pattern. Hover to see the full pattern, or click the copy icon to copy it |
| **Status** | **Enabled** or **Disabled** |
| **Enable / Disable** | Toggle the filter on or off without deleting it |
| **Actions** | **Edit** to change the field or pattern, **Delete** to remove the filter |

Use the tabs above the list to switch between:

* **Current workspace** — Filters that apply to the workspace you are in
* **All workspaces** — Filters that apply to every workspace

Use **All**, **Active** and **Inactive** on the right to show every filter, only enabled filters or only disabled filters.

> [!WARNING]
>
> Deleting a filter cannot be undone. If you might need the filter again, disable it instead.

## Example: Cleaning Up Emails

Email results from scanned files often include placeholder addresses, library authors and error-tracking addresses. This filter hides the most common ones:

```regex theme={null}
[a-zA-Z0-9._%+-]+@(github\.com|example\.com|mail\.com|[a-zA-Z0-9.-]*sentry[a-zA-Z0-9.-]*)
```

With this filter enabled, addresses like these are hidden from **Reconnaissance → Emails**:

| Hidden | Why |
| - | - |
| `noname@example.com` | Placeholder domain |
| `emailaddress3@mail.com` | Placeholder or sample address |
| `git@github.com` | Generic third-party address |
| `605a7b…@sentry-next.wixpress.com` | Error-tracking (Sentry) DSN, not a real mailbox |

Addresses that belong to your target stay visible.

## Starter Patterns

Copy these into a new filter and adjust them for your targets.

| Field | Pattern | Hides |
| - | - | - |
| Emails | `@(example\|test\|sample)\.(com\|org\|net)$` | Placeholder email domains |
| Emails | `sentry` | Sentry DSN addresses |
| Domains | `(googleapis\|gstatic\|cloudflare\|jsdelivr\|unpkg)\.com$` | Common CDN and Google domains |
| Extracted URLs | `\.(png\|jpe?g\|gif\|svg\|woff2?\|ttf\|css)(\?\|$)` | Image, font and stylesheet URLs |
| Extracted URLs | `^https?://(www\.)?(w3\.org\|schema\.org)` | Standards and schema URLs |
| IP Addresses | `^(10\.\|127\.\|192\.168\.\|172\.(1[6-9]\|2[0-9]\|3[01])\.)` | Private and loopback IP ranges |

## Tips

* **Start narrow** — Filter exact domains first, then broaden the pattern once you have checked what it hides.
* **Test before saving** — Try your pattern in a regex tester against a few real values from your results.
* **Use All workspaces for global noise** — Placeholder domains and CDNs are the same on every target, so one filter can cover all your workspaces.
* **Use This workspace for target-specific noise** — Keep filters for one program's own test accounts or staging domains in that program's workspace.
* **Check with the filter off** — Before reporting that something is missing, disable your filters to make sure you are seeing everything.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.