For the complete documentation index, see llms.txt. This page is also available as Markdown.

🔎Filter lists with groups and dynamic values

This guide is for app makers building in the NotionApps builder.

Use it when a list should show a working set that is more than one fixed condition — nested and / or / not groups, values that change with the person or the clock, or a value that comes from the published URL.

Where this lives These controls are on a List screen under Filtering. They are not Screen Visibility, Data Restriction, or In-App Filtering.

If you only remember one sentence:

In Filtering, add conditions and groups, pick a value type for each condition, then Publish. The live list only returns rows that match.


What you can do

Job
What to use

Always hide Archived

Fixed value

Show each employee their store

Logged-in user property

Show rows assigned to the signed-in person

Logged-in user

Show related rows for the parent record

Current row / Current row property (related lists on Details)

Show due today / this week / this month

Today, Now, Start of week, Start of month

Show rows that match a shared link

URL parameter

Combine those rules

+ Add group with and, or, or not


Before you start

  1. Open a List (View Items) or List (Update Items) screen.

  2. Keep the right-hand inspector on Content → Filtering.

  3. Do not use Screen Visibility for “which rows appear.” Visibility only decides who can open the screen.


Step 1 — Add a condition

  1. Click + Add Filtering.

  2. Set Filter by to a property on this list’s database.

  3. Set Condition (equals, is not empty, is after, …).

  4. Set the value type (see the table below).


Step 2 — Choose a value type

Value type
What NotionApps compares against
Typical use

Fixed value

The exact value you type or pick

Status is Open

Logged-in user

The signed-in Users row itself

Assigned To equals the current person

Logged-in user property

A property on the signed-in user (Pro+)

Store equals the user’s Store

Current row

The parent record on a related list

Assets whose Location is this Location

Current row property

A property on that parent record

Tasks whose Store equals the Location’s Store

Today

Start of today in the app timezone

Due Date is today

Now

The current time

Last seen is before now

Start of week

Monday 00:00 (ISO week)

Created is on or after this week

Start of month

The first day of this month

Invoice date is this month

URL parameter

A query key on the published URL

Store equals ?store=north

Current row / Current row property appear on related lists (a list component on a Details screen). They do not appear on a top-level nav list, because there is no parent row.


Step 3 — Nest groups (and / or / not)

A single list of conditions is often enough. Use groups when you need parentheses.

  1. Click + Add group.

  2. Set the group connector to and, or, or not.

  3. Click + Add condition inside the group.

  4. Nest another group if needed. Groups can be 3 levels deep.

not wraps one child (one condition or one nested group) and inverts it.

Example: open North work, or anything assigned to me that is not archived:


Step 4 — Filter a list from a URL

  1. Add a condition (for example Asset Name equals).

  2. Set the value type to URL parameter.

  3. Enter the Parameter name (for example store). Use a short lowercase name with no spaces.

  4. Publish.

  5. Open the published list with and without the query:

Do not use these reserved keys as filter parameter names: cache_bust, sim_user_id, debug, live.

This is not the same as Prefill Create Forms from a URL. Prefill fills fields on an Add form. URL parameter on a list decides which rows appear.


Step 5 — Save, publish, and test

  1. Save the builder as usual.

  2. Publish.

  3. Open the live app (not only preview).

What you configured
How to test

Logged-in user / user property

Log in as two people with different values

Today / week / month

Confirm a row that is due today appears, and yesterday does not

URL parameter

Open the list with the query, then without it (expect an empty list when missing)

Current row

Open two different parent Details records and confirm the related list changes


Filtering vs the other three controls

Control
Who it is for
What it decides

Filtering (this page)

You, the maker

Which rows appear on this list

In-App Filtering

End users

Extra chips they can change while browsing

Screen Visibility

You, the maker

Whether someone can open the screen at all

Data Restriction

You, the maker

Database-wide tenancy for every screen on that database


Troubleshooting

What you see
Likely cause
What to do

Everyone sees all rows

Still using Fixed value, or not published

Change the value type; Publish; hard-refresh

Everyone sees zero rows

URL param missing, user property blank, or types do not match

Add ?param=, fill the user profile, or align property types

No Logged-in user property in the menu

Per-list allow switch is Off, or plan is below Pro

Turn the switch On, or upgrade

No Current row in the menu

You are on a top-level list

Open the related list on a Details screen

Preview looks right, live does not

Not published

Publish again