How Todoist Filter works
What Is a Todoist Filter?
A filter is a custom search expression you enter into the Filter input field in your action.
It tells Todoist which tasks you want the action to process (like add a tag, update priority, etc.).
What Works in This Action Step
You can use any filter string that is supported by the Todoist REST API, including:
Logic Operators You Can Use:
Symbol | Meaning | Example |
---|---|---|
& | AND | today & @email |
` | ` | OR |
! | NOT | !subtask |
() | Grouping | `(today |
β These work exactly like they do in the Todoist UI.
What Doesn't Work in This Action
Not Supported | Why |
---|---|
, comma-separated filters like p1 & overdue, today | Not supported by Todoist REST API. Use only one filter at a time. |
Completed task filters | REST API only returns active (incomplete) tasks. |
Combining filter with project_id or label in the same request | The filter parameter takes priority β other parameters will be ignored. |
Examples You Can Use
π Date & Time
Goal | Filter |
---|---|
Tasks due today | today |
Tasks overdue | overdue |
Due in next 7 days | 7 days |
No due date | no date |
Due today after 2pm | due after: today at 2pm |
π· Labels
Goal | Filter |
---|---|
Tasks with label βemailβ | |
Without any labels | no labels |
Labels starting with "home" | @home* |
With multiple labels | @email & @followup |
β‘ Priority
Goal | Filter |
---|---|
Priority 1 tasks | p1 |
Priority 2 or 3 | `p2 |
Tasks without priority | p4 |
π§© Subtasks
Goal | Filter |
---|---|
Show only subtasks | subtask |
Show only parent tasks | !subtask |
π Projects & Sections
Goal | Filter |
---|---|
Tasks in βWorkβ | #Work |
Tasks in sub-projects of βSchoolβ | ##School |
Tasks not in any section | !/* |
Tasks in βWorkβ & section βCallsβ | #Work & /Calls |
π₯ Assigned Tasks
Goal | Filter |
---|---|
Assigned to me | assigned to: me |
Assigned to others | assigned to: others |
Assigned to Steve | assigned to: Steve |
π Keyword Search
Goal | Filter |
---|---|
Tasks containing βMeetingβ | search: Meeting |
Tasks with links | search: http |
π§ Advanced Examples That Work
Filter | Explanation |
---|---|
today & @email | Tasks due today AND labeled @email |
`(today | overdue) & p1` |
#Work & !@Subtask | Tasks in Work project without @Subtask label |
@email & !subtask | Email tasks that are not subtasks |
assigned to: Steve & #Work & today | Steve's work tasks due today |
β Unsupported Example (Will Not Work)
Filter | Why it fails |
---|---|
p1 & overdue, p3 & today | Comma-separated filters not supported by Todoist API |
overdue, today | Can't run multiple filters in one request |
p1, p2, p3 | Use `p1 |
Pro Tips
β’ Use only one filter per action run
β’ Use () for combining logic:
β (today | overdue) & #Work
β’ Use wildcards:
β @home* β matches @homeoffice, @homework
β’ You can use natural language for due dates:
β due before: Friday, due after: next week
Final Reminder
β This field supports all filters you would use in Todoist UI, except comma-separated multiple filters.
π« Do not use commas in filters β use logical operators like &, |, ! instead.