# Custom Dashboards (Beta)

## Overview

{% hint style="info" %}
Custom dashboards are in open beta starting with Panther version 1.112, and are available to all customers. Please share any bug reports and feature requests with your Panther support team.
{% endhint %}

Custom dashboards in Panther allow you to group data visualizations that provide insights tailored to your organization's needs. You can customize each dashboard to display key metrics, such as data ingest volume, alert volume, and any other trends you'd like to monitor at a glance.

A custom dashboard is made up of one or more visualizations, or "widgets." Each visualization is generated from a [PantherFlow](https://docs.panther.com/pantherflow) query using the [`visualize` operator](https://docs.panther.com/pantherflow/operators/visualize). After you create a dashboard, you can [apply filters](#creating-a-dashboard-filter-and-variable) on all visualizations.

Learn how to [build a custom dashboard](#creating-a-custom-dashboard-and-adding-visualizations), [access your custom dashboards](#viewing-a-custom-dashboard-and-its-pantherflow-queries), and more, below.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-d3decee7924900eadc5a2f97596f537b37486683%2FScreenshot%202025-01-10%20at%205.10.28%E2%80%AFPM.png?alt=media" alt="Under a header reading &#x22;My custom dashboard&#x22; are six rectangles of various sizes. Each one contains a chart—one is a line chart and the five others are bar charts. Each chart has a name, e.g., &#x22;Number of alerts per severity, processed per month&#x22;"><figcaption></figcaption></figure>

## Creating a custom dashboard and adding visualizations

To build a custom dashboard, first you will [create the dashboard](#creating-a-custom-dashboard), then you will [add one or more visualizations](#adding-a-visualization-to-a-custom-dashboard).

### **Creating a custom dashboard**

You can create a custom dashboard in the Panther Console from either the **Dashboard** or **Search** page.

{% tabs %}
{% tab title="From Dashboard page" %}
**Creating a custom dashboard from the Dashboard page**

1. In the left-hand navigation bar of your Panther Console, click **Dashboard**.
   * This is the landing page when logging into the Panther Console.
2. To create a dashboard, either:
   * Hover over the name of the currently displayed dashboard, then click **+**.\
     ![To the right of an "Overview" header, a plus sign is circled. Its tooltip reads "Add New Dashboard"](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-447d918c082c1a16dff554eb96b02a3418225596%2FScreenshot%202024-12-12%20at%205.51.22%E2%80%AFPM.png?alt=media)
   * Click the name of the currently displayed dashboard, then click **+ New Dashboard**.\
     ![Under a header reading "Overview" a "+ New Dashboard" button is circled.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-5dbdf298fd22a378e347cb84d5040aa58f2235a3%2FScreenshot%202024-12-12%20at%205.51.37%E2%80%AFPM.png?alt=media)
3. Now that your new dashboard exists, you can [add one or more visualization widgets](#adding-a-visualization-to-a-custom-dashboard) and [update the name and/or emoji of the dashboard](#updating-the-name-or-emoji-of-a-custom-dashboard).
   {% endtab %}

{% tab title="From Search page" %}
**Creating a custom dashboard from the Search page**

This method of dashboard creation also adds the first visualization widget to the new dashboard.

1. In the left-hand navigation bar of your Panther Console, click **Investigate** > **Search**.
2. Run a [PantherFlow](https://docs.panther.com/pantherflow) search that uses the [`visualize` operator](https://docs.panther.com/pantherflow/operators/visualize).
   * [Learn more about how to run a PantherFlow query in Search here](https://docs.panther.com/search-tool#using-pantherflow-in-search).
3. In the top-right corner of the resulting visualization, click the three dots icon, then **+ Add to dashboard...**.\
   ![An arrow is drawn from a three-dots icon to a button reading "+ Add to dashboard"](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-b35b839824984d228c60f0f7b48c3236b631d1fb%2FScreenshot%202024-12-12%20at%204.47.07%E2%80%AFPM.png?alt=media)
4. Click **+ New dashboard**.
   * A new custom dashboard is created, and this visualization is added to it. In the notification displayed in the lower-left corner of the screen, click **Go to dashboard** to view the new dashboard.\
     ![A button reading "Go to dashboard" is circled.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-c1d679fe510bbd7ca2acd12c3a7232bf95bccd3f%2FScreenshot%202024-12-12%20at%204.49.42%E2%80%AFPM.png?alt=media)
   * You can optionally [update the name and/or emoji of the dashboard](#updating-the-name-or-emoji-of-a-custom-dashboard).
     {% endtab %}
     {% endtabs %}

### Adding a visualization to a custom dashboard

After you have [created a custom dashboard](#creating-a-custom-dashboard), you can add a visualization widget to it. You can only add visualizations to dashboards you created.

1. In the left-hand navigation bar of your Panther Console, click **Investigate** > **Search**.
2. Run a [PantherFlow](https://docs.panther.com/pantherflow) search that uses the [`visualize` operator](https://docs.panther.com/pantherflow/operators/visualize).
   * [Learn more about how to run a PantherFlow query in Search here](https://docs.panther.com/search-tool#using-pantherflow-in-search).
3. In the top-right corner of the resulting visualization, click the three dots icon, then **+ Add to dashboard...**.\
   ![An arrow is drawn from a three-dots icon to a button reading "+ Add to dashboard..."](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-b35b839824984d228c60f0f7b48c3236b631d1fb%2FScreenshot%202024-12-12%20at%204.47.07%E2%80%AFPM.png?alt=media)
4. Select the name of the custom dashboard you'd like to add the visualization to.
   * The visualization is added to the custom dashboard. In the notification displayed in the lower-left corner of the screen, click **Go to dashboard** to view the dashboard.\
     ![A "Go to dashboard" button is circled.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-c1d679fe510bbd7ca2acd12c3a7232bf95bccd3f%2FScreenshot%202024-12-12%20at%204.49.42%E2%80%AFPM.png?alt=media)

{% hint style="info" %}
If the custom dashboard you add your visualization to has [filters](#dashboard-filters-and-variables-beta), they will be inserted into to your PantherFlow query when it is added to the dashboard.
{% endhint %}

## Viewing a custom dashboard and its PantherFlow queries

A dashboard is made up of one or more visualizations, each powered by a [PantherFlow](https://docs.panther.com/pantherflow) query.

### **Viewing a custom dashboard**

To view a custom dashboard in your Panther Console:

1. In the left-hand navigation bar of your Panther Console, click **Dashboards**.
   * This is the landing page when logging into the Panther Console.
2. In the upper-left corner, click **Overview**.
3. Under **Custom Dashboards**, select the dashboard you'd like to view.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-e3bbaa652f5eff12de97965ac7631f6e3effe594%2FScreenshot%202024-12-13%20at%204.24.18%E2%80%AFPM.png?alt=media" alt="" width="375"><figcaption></figcaption></figure>

### Viewing a visualization's PantherFlow query

It may be helpful to see the [PantherFlow](https://docs.panther.com/pantherflow) query underlying a visualization widget. You can view the query in the Edit modal or in Search:

{% tabs %}
{% tab title="In Edit modal" %}
**Viewing a visualization's PantherFlow query in the Edit modal**

1. In the upper right-hand corner of the visualization widget for which you'd like to view the PantherFlow query, click the three dots icon.
2. Click **Edit visualization settings**.

<div data-full-width="true"><figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FVAJ2xB15m3aAtr26JlHR%2Fimage.png?alt=media&#x26;token=d18358ce-de6c-4353-8fbb-ab605f69248f" alt="" width="189"><figcaption></figcaption></figure></div>

* On the **Edit visualization settings** pop-up modal, in the left-side panel, click the down arrow icon to expand and view the PantherFlow query.
  * You can also edit the visualization from this modal—learn more in [Editing a visualization](#editing-a-visualization).

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FmOcPXYBFDrScW2M1GC9h%2Fimage.png?alt=media&#x26;token=182c41a3-2145-4afb-b771-1faa39ff12c1" alt="" width="375"><figcaption></figcaption></figure>
{% endtab %}

{% tab title="On Search page" %}
**Viewing a visualization's PantherFlow query in Search**

1. In the upper right-hand corner of the visualization widget for which you'd like to view the PantherFlow query, click the three dots icon.
2. Click **Go to PantherFlow query**.\
   ![](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FtOO2sgEAAlUmYlcUn5Jp%2Fimage.png?alt=media\&token=e009d013-029f-4207-a478-52c45eecb19f)
   * You will be redirected to [Search](https://docs.panther.com/search/search-tool) and the associated PantherFlow query will load and execute.

{% hint style="info" %}
Editing a visualization's underlying PantherFlow query in Search will not update the visualization on your dashboard. To edit a visualization in your dashboard, see [Editing a visualization](#editing-a-visualization) below.
{% endhint %}
{% endtab %}
{% endtabs %}

## Updating a custom dashboard

Once you have [created a custom dashboard](#creating-a-custom-dashboard), you can [update its name or emoji](#updating-the-name-or-emoji-of-a-custom-dashboard). Once you have [added visualization widgets](#adding-a-visualization-to-a-custom-dashboard) to the dashboard, you can [edit them](#editing-a-visualization) as well as [reposition and resize them](#customizing-the-layout-of-a-custom-dashboard).

You can only update custom dashboards you created.

### **Editing a visualization**

You can edit a visualization widget from a custom dashboard you created.

To edit a visualization widget in a custom dashboard:

1. [View the custom dashboard](#viewing-a-custom-dashboard) containing the visualization widget you'd like to edit.
2. In the top-right corner of the visualization widget you'd like to edit, click the three dots icon.
3. Click **Edit visualization settings**.

   <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-e99a81043e27d22a5bd848c14c49f164d925d302%2Fimage.png?alt=media" alt="" width="189"><figcaption></figcaption></figure>
4. Make desired updates in the **Edit visualization settings** pop-up modal.
   * If you'd like to update attributes of the visualization (such as the chart title or orientation), follow either the **Using form** or **Using PantherFlow** instructions below.
   * If you'd like to update the PantherFlow query underlying the visualization outside of the [`visualize` operator annotations](https://docs.panther.com/pantherflow/operators/visualize#supported-annotations) (e.g., you'd like to add a [`where`](https://docs.panther.com/pantherflow/operators/where) clause), follow the **Using PantherFlow** instructions below.

{% tabs %}
{% tab title="Using form" %}
To update a visualization widget using the form:

1. On the left-hand side of the **Edit visualization settings** pop-up modal, update the visualization form field values as desired.

   <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-fc43efd78be131233930d626d2cd9eaed46f8101%2FScreenshot%202025-03-24%20at%206.29.53%E2%80%AFPM.png?alt=media" alt="Under an &#x22;Edit visualization settings&#x22; header, a form with various fields (including &#x22;Chart Type&#x22; and &#x22;Orientation&#x22;) is circled." width="375"><figcaption></figcaption></figure>

   * Updates to form field values are reflected in the PantherFlow query above (visible by clicking the down arrow icon: <img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-f2dfdcb45676cbe7e94fe705bf159c7b3c273c15%2FScreenshot%202025-03-24%20at%205.18.37%E2%80%AFPM.png?alt=media" alt="Arrow pointing downward enclosed in a circle." data-size="line">).
   * The form fields reflect the PantherFlow [`visualize` annotations](https://docs.panther.com/pantherflow/operators/visualize#supported-annotations), and include:
     * In the **Data** section:
       * **Chart Type**: Select **Bar chart**, **Line chart**, or **Table chart.**
       * (If **Chart Type** is **Bar chart** or **Line chart**) **Y-axis**: Select the field you'd like to be represented on the vertical axis. (Select **Auto-detect** to allow Panther to infer the value based on your query.)
       * (If **Chart Type** is **Bar chart** or **Line chart**) **X-axis**: Select the field you'd like to be represented on the horizontal axis. (Select **Auto-detect** to allow Panther to infer the value based on your query.)
       * (If **Chart Type** is **Bar chart** or **Line chart**) **Series**: Select the field you'd like to use to group the data. (Select **Auto-detect** to allow Panther to infer the value based on your query.)
     * (If **Chart Type** is **Bar chart** or **Line chart**) In the **Appearance** section:
       * **Orientation**: Select an icon to indicate the direction of the bars.
         * Orientation can only be altered if **Y-axis** and **X-axis** are both set to **Auto-detect**.
       * **Show legend**: Toggle **On** or **Off** depending on whether the visualization should have a legend.
       * (If **Show legend** is **On**) **Legend Position**: Select a value for the legend's placement.
     * In the **Labels** section:
       * **Visualization Title**: Enter a title for the visualization.
2. Click **Save Changes** to update the visualization widget or **Cancel** to discard your edits.
   {% endtab %}

{% tab title="Using PantherFlow" %}
To update a visualization widget by editing its PantherFlow query:

1. On the left-hand side of the **Edit visualization settings** pop-up modal, click the down arrow icon to expand the PantherFlow query and enter edit mode.\
   ![Under a code editor with a PantherFlow query is a downward-pointing arrow.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-f646c584e794ec13b7956e492c21cc933947aba1%2Fimage.png?alt=media)
2. Edit the query as desired.
   * Updates made to the [`visualize` operator](https://docs.panther.com/pantherflow/operators/visualize) will be reflected in the modal form (visible by clicking the up arrow icon: <img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-446efb862f5e3c55190c769f9e9b61db50ec8ded%2FScreenshot%202025-03-24%20at%205.08.46%E2%80%AFPM.png?alt=media" alt="Arrow pointing up enclosed in a circle." data-size="line">).

     <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-a8733827cfbcfb4e945a681cc804f84440a63cd0%2FScreenshot%202025-03-24%20at%206.35.22%E2%80%AFPM.png?alt=media" alt="Under an &#x22;Edit visualization settings&#x22; header, a code editor with a PantheFlow query is circled." width="375"><figcaption></figcaption></figure>
3. Click **Run Query** to see how the visualization changes after your modification(s).
4. Click **Save Changes** to update the visualization widget or **Cancel** to discard your edits.
   {% endtab %}
   {% endtabs %}

### Updating the name or emoji of a custom dashboard

1. [View the custom dashboard](#viewing-a-custom-dashboard) you'd like to update.
2. Hover over the title of the dashboard, then click the pencil (**Edit Title**) icon.\
   ![A pencil icon is circled. Its tooltip reads "Edit Title."](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-85411093fae903bdf71e6045ab8b8ec409ff0474%2FScreenshot%202024-12-13%20at%204.36.05%E2%80%AFPM.png?alt=media)
3. Update the **Dashboard Name** value and/or select a new emoji.
4. Click the check mark icon to save your changes, or the **X** icon to discard your changes.\
   ![An X and a check mark are next to one another and are both circled.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-bee73fe6b2423f74cb2a3d96447489a60accd79f%2FScreenshot%202024-12-13%20at%204.52.03%E2%80%AFPM.png?alt=media)

### Customizing the layout of a custom dashboard

You can adjust both the size and position of each visualization widget in a custom dashboard. Changes made to widget size and position will be saved automatically after changes have stopped for a short period of time. You can only customize the layout of dashboards you created.

#### **Resizing a visualization widget**

To change the size of a widget:

1. Hover over the lower right-hand corner of a widget.
2. Click and drag the corner to resize the widget to the desired size.

#### **Repositioning a visualization widget**

To change the position of a widget:

1. Hover over the widget's title.
2. Click and drag the widget to its new location within the dashboard.

## **Deleting a custom dashboard or its visualizations**

### **Deleting a custom dashboard**

Once a dashboard is deleted, it will not appear in any dashboard lists. You can only delete dashboards you created. If you only need to delete a visualization from a dashboard (and not the entire dashboard as a whole), see [Deleting a visualization in a custom dashboard](#deleting-a-visualization-in-a-custom-dashboard), below.

To delete a custom dashboard:

1. [View the custom dashboard](#viewing-a-custom-dashboard) you'd like to delete.
2. Once the selected dashboard is loaded, hover over its title, then click the trash can icon.\
   ![A trash can icon is circled. Its icon reads "Delete Dashboard."](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-5ca0a7ee4da024b63173bb3a4694b5cb19d4e561%2FScreenshot%202025-01-06%20at%204.26.36%E2%80%AFPM.png?alt=media)
3. In the **Delete Dashboard?** pop-up modal, click **Confirm**.
   * The dashboard will be deleted and a confirmation notification will be displayed in the lower left-hand corner of the Console window.
   * To revert the deletion, in the confirmation notification, click **Undo**.\
     ![An "Undo" button is circled.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-3933296d983b94e23b0203a59ec44d0128d4e51e%2FScreenshot%202025-01-06%20at%204.32.41%E2%80%AFPM.png?alt=media)

### Deleting a visualization in a custom dashboard

You can only delete a visualization widget from a custom dashboard you created.

To delete a visualization widget from a custom dashboard:

1. [View the custom dashboard](#viewing-a-custom-dashboard) containing the visualization widget you'd like to remove.
2. In the top-right corner of the visualization widget you'd like to remove, click the three dots icon.
3. Click **Remove visualization**.

   <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-52f43557090395b670d1485d95da44995135fd1f%2FScreenshot%202024-12-12%20at%206.03.50%E2%80%AFPM.png?alt=media" alt="An arrow is drawn from a three-dots icon to a &#x22;Remove visualization&#x22; button." width="228"><figcaption></figcaption></figure>

## **Limitations of custom dashboards**

Custom dashboards currently have the following limitations:

* Your Panther instance can store up to 1,000 custom dashboards.

## Dashboard filters and variables <a href="#dashboard-filters-and-variables" id="dashboard-filters-and-variables"></a>

You can add filters to your custom dashboard, which allow you and others viewing your dashboard to drill down on certain fields across all visualizations.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fu1Tt4EZvK6q8LMNBxfrt%2FScreenshot%202025-11-13%20at%206.31.37%E2%80%AFPM.png?alt=media&#x26;token=a89d729f-5e78-4d06-9ef0-5518f0ea38b1" alt=""><figcaption></figcaption></figure>

* **Dashboard filters**:
  * Apply to all visualization widgets on your custom dashboard (though you can manually exclude certain visualization widgets from a filter)
    * Panther applies the filter by inserting a `where` clause in the PantherFlow statements underlying all visualization widgets on the dashboard
  * Create dashboard variables
* **Dashboard variables**:
  * Are created when a filter is created, and are used in the `where` clauses Panther appends to each visualization widget's underlying PantherFlow
  * Can be used in custom PantherFlow clauses (outside the `where` clauses Panther auto-adds)

### Creating a dashboard filter and variable

You can only add filters to custom dashboards you own (though anyone viewing your dashboard can provide values).

To add a filter to a custom dashboard:

1. [View the custom dashboard](#viewing-a-custom-dashboard) you'd like to apply a filter on.
2. Under the dashboard title, click **Add Filter**.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FD1TQgHRTIFj12UcOxiWC%2Fimage.png?alt=media&#x26;token=66e1ad0a-e7ff-42ce-a3e6-9cb428ff23b2" alt="" width="563"><figcaption></figcaption></figure>

3. In the dropdown, search for and select a field you'd like to filter on. Adding this filter (even before entering any [values](#providing-values-to-a-filter-and-variable)):

   <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FVOIytkGqbNeyNBcIjEUV%2FScreenshot%202025-11-13%20at%204.33.18%E2%80%AFPM.png?alt=media&#x26;token=6d99920a-fb01-4120-95b0-45c3d246ec8a" alt="" width="375"><figcaption></figcaption></figure>

   * Creates a dashboard variable, which can be [used in custom clauses](#using-a-variable-in-a-custom-pantherflow-clause). Variable names start with `$`.
     * In the example below, the variable is `$p_alert_severity`.
   * Adds a `where` clause with the new variable to the PantherFlow underlying each visualization.
     * The `where` clause syntax depends on the data type of the variable—see examples in [Providing values to a filter and variable](#providing-values-to-a-filter-and-variable).
     * You can view the updated PantherFlow in the [Edit visualization settings modal](#editing-a-visualization).

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FEsFt4E6DdBE6FvzlDioo%2Fimage.png?alt=media&#x26;token=3b5fc9a0-36ce-4e13-8c0a-c307d6681ee0" alt="" width="563"><figcaption></figcaption></figure>

4. Add values to the filter—see [Providing values to a filter/variable](#providing-values-to-a-filter-variable) to learn about how to enter values depending on the data type of the field you're filtering on.
   * Adding values doesn't change the visualization widgets' underlying PantherFlow; it only changes the value of the variable that's already been added in a `where` clause.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FXXlI9BQU7aAhKz15YGiI%2Fimage.png?alt=media&#x26;token=9fe28194-474f-4169-ab46-a100bb60a766" alt="" width="563"><figcaption></figcaption></figure>

### Providing values to a filter and variable

[Creating a dashboard filter](#creating-a-dashboard-filter) creates a variable, which is used in a `where` clause inserted in each visualization widget and able to be used in custom clauses. You can then provide values to the variable.

How you enter filter values depends on the data type of the field you're filtering on:

{% tabs %}
{% tab title="String" %}
**Providing values to a string filter/variable**

1. Click the filter.
2. If the value you'd like to filter on is available in the dropdown, click its checkbox.

   <div align="center"><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Ft3AbWHRRwCjfUBiRu8pF%2Fimage.png?alt=media&#x26;token=20b7b015-9ecc-441d-bb3c-0fd7c4fdc66f" alt=""></div>

   * The dropdown options do not represent all available options—they are some of the values of the field that are currently found in the data set.
   * If you update the **Date Range** filter value, the data set will be refreshed, and the options may change.
   * You can also enter custom values:

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FguNdj34O0QFMWpLCohZd%2FScreenshot%202025-11-13%20at%205.55.41%E2%80%AFPM.png?alt=media&#x26;token=498dd3c9-50a2-42eb-8741-d1feef138c14" alt="" width="364"><figcaption></figcaption></figure>

For string fields, a `where` clause like the following will be added to the PantherFlow query underlying each visualization widget (in this example, we are using `p_alert_severity`):

{% code overflow="wrap" %}

```kusto
| where p_alert_severity in $p_alert_severity
```

{% endcode %}
{% endtab %}

{% tab title="Number" %}
**Providing values to a number filter/variable**

1. Click the filter.
2. Enter **Min** and **Max** values.
3. Click **Set Range**.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Ft1EnoSAW8HIzfhprCQWU%2Fimage.png?alt=media&#x26;token=89981a45-b8e1-4f67-a396-8fd0dc59e399" alt="" width="314"><figcaption></figcaption></figure>

For number fields, a `where` clause like the following will be added to the PantherFlow query underlying each visualization widget (in this example, we are using `p_udm.destination.bytes`):

{% code overflow="wrap" %}

```kusto
| where p_udm.destination.bytes between $p_udm__destination__bytes.min .. $p_udm__destination__bytes.max
```

{% endcode %}
{% endtab %}

{% tab title="Boolean" %}
**Providing values to a boolean filter/variable**

1. Click the filter.
2. Select **True** or **False**.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2F5H5xhX4d0c5wxLOXzZum%2Fimage.png?alt=media&#x26;token=b8f277fe-50bd-4539-85fa-265bc448ca9e" alt="" width="317"><figcaption></figcaption></figure>

For boolean fields, a `where` clause like the following will be added to the PantherFlow query underlying each visualization widget (in this example, we are using `p_current`):

{% code overflow="wrap" %}

```kusto
| where p_current == $p_current
```

{% endcode %}
{% endtab %}

{% tab title="Time" %}
**Providing values to a time filter/variable**

1. Click the filter.
2. Select a time range—either a relative range (e.g., "Last 20 minutes") or a custom range.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2F6UDVt6l9xIE41QR0vXzL%2FScreenshot%202025-11-13%20at%206.27.26%E2%80%AFPM.png?alt=media&#x26;token=db3175d3-11e0-4c8c-bee0-c537774b768d" alt="" width="284"><figcaption></figcaption></figure>

For time fields, a `where` clause like the following will be added to the PantherFlow query underlying each visualization widget (in this example, we are using `p_alert_update_time`):

{% code overflow="wrap" %}

```kusto
| where p_alert_update_time between $p_alert_update_time.start_time .. $p_alert_update_time.end_time
```

{% endcode %}

If you added a filter for the **Date Range** field, the filter will be based on `p_event_time`, and the following `where` clause will be added to the PantherFlow query underlying each visualization widget:

{% code overflow="wrap" %}

```kusto
| where p_event_time between $time.start_time .. $time.end_time
```

{% endcode %}
{% endtab %}

{% tab title="Array" %}
**Providing values to an array filter/variable**

1. Click the filter.
2. If the value you'd like to filter on is available in the dropdown, click its checkbox.

   <figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FotQv3hMaW7iX5JPmaKQF%2Fimage.png?alt=media&#x26;token=8d2070c1-4c92-4c4d-913f-161d3c0cec44" alt=""><figcaption></figcaption></figure>

   * The dropdown options do not represent all available options—they are some of the values of the field that are currently found in the data set.
   * If you update the **Date Range** filter value, the data set will be refreshed, and the options may change.
   * You can also enter custom values:

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FguNdj34O0QFMWpLCohZd%2FScreenshot%202025-11-13%20at%205.55.41%E2%80%AFPM.png?alt=media&#x26;token=498dd3c9-50a2-42eb-8741-d1feef138c14" alt="" width="364"><figcaption></figcaption></figure>

For array fields, a `where` clause like the following will be added to the PantherFlow query underlying each visualization widget (in this example, we are using `p_any_actor_ids`):

```kusto
| where arrays.overlap(p_any_actor_ids, $p_any_actor_ids)
```

{% endtab %}
{% endtabs %}

### Excluding a visualization widget from a filter

When a filter is created, it's automatically added to every visualization widget in the custom dashboard. If you prefer a certain visualization not be filtered:

* [Edit your visualization's PantherFlow query](#editing-a-visualization) to remove the `where` clause referencing the variable.

### Using a variable in a custom PantherFlow clause

After you've created a variable (by [creating a filter](#creating-a-dashboard-filter)) and [provided it a value](#providing-values-to-a-filter-variable), you may want to use it in custom clauses in the PantherFlow underlying a visualization.

1. Follow the steps in [Editing a visualization](#editing-a-visualization) to access a visualization widget's PantherFlow editor.
2. Modify the PantherFlow using the variable.

### Resetting a filter and variable value

* To reset a dashboard variable's value, click the filter, then click **Clear**.
  * It's not possible to reset the value of a time filter.

<div align="center"><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FWbmAdKEip9rEn333Ct5l%2Fimage.png?alt=media&#x26;token=7cd7f054-1b8d-4c65-9544-5c414fc13764" alt=""> <img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FKShgN8l7cx47EISFflUy%2FScreenshot%202025-11-13%20at%206.10.09%E2%80%AFPM.png?alt=media&#x26;token=05ed92ad-cd4e-449a-a42e-50e7d4a7ea20" alt=""></div>

### Deleting a dashboard filter and variable

When you delete a filter from a custom dashboard, you also delete the variable(s) it created.

To remove a dashboard filter and its related variable(s):

1. Click **Add Filter**.
2. Uncheck the field you'd like to remove.
   * There `where` clause added to the underlying PantherFlow queries of each visualization will be removed.

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FZcGc86le6YZa3YYbIghl%2Fimage.png?alt=media&#x26;token=37210026-ec0f-4d06-9aea-91f08a7c39d6" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="warning" %}
When you delete a filter:

* If you've modified the `where` clause Panther inserted when you created a filter, Panther may not be able to properly remove it—you may have to do so manually.
* If you've used the variable in any [custom PantherFlow clauses](#using-a-variable-in-a-custom-pantherflow-clause), Panther will not remove them—you must do so manually.
  {% endhint %}
