28 KiB
Filters
Filters allow for you to filter every item added to the collection/overlay/playlist from every builder using the filters
attribute.
Using Filters
Filters cannot do anything alone they require the use of at least one Builder to function.
You can have multiple filters in each set but an item must match at least one value from each filter to not be ignored. The values for each must match what Plex has including special characters in order to match.
filters:
genre: Action
country: Germany
Anything that doesn't have both the Genre Action
and the Country Germany
will be ignored.
Multiple Filter Sets can be given as a list. With multiple sets only one of the sets must pass for the item to not be ignored.
filters:
- genre: Action
country: Germany
- genre: Comedy
country: France
Anything that doesn't have either both the Genre Action
and the Country Germany
or the Genre Comedy
and the Country France
will be ignored.
All filter options are listed below. To display items filtered out add show_filtered: true
to the definition.
You can use the plex_all: true
builder to filter from your entire library.
Filters can be very slow. Try to build or narrow your items using Plex Search or another Builder if possible.
String Filters
String filters can be used with either no modifier or with .not
, .is
, .isnot
, .begins
, .ends
, or .regex
.
String filters can take multiple values only as a list.
Modifier
String Modifier | Description |
---|---|
No Modifier | Matches every item where the attribute contains the given string |
.not |
Matches every item where the attribute does not contain the given string |
.is |
Matches every item where the attribute exactly matches the given string |
.isnot |
Matches every item where the attribute does not exactly match the given string |
.begins |
Matches every item where the attribute begins with the given string |
.ends |
Matches every item where the attribute ends with the given string |
.regex |
Matches every item where the attribute matches the regex given |
Attribute
String Filter | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
title |
Uses the title attribute to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
tmdb_title 2 |
Uses the title from TMDb to match | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
summary |
Uses the summary attribute to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
studio |
Uses the studio attribute to match | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
edition |
Uses the edition attribute to match | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
record_label |
Uses the record label attribute to match | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
folder |
Uses the item's folder to match | ❌ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ |
filepath |
Uses the item's filepath to match | ✅ | ✅1 | ✅1 | ✅ | ✅1 | ✅1 | ✅ |
audio_track_title |
Uses the audio track titles to match | ✅ | ✅1 | ✅1 | ✅ | ✅1 | ✅1 | ✅ |
video_codec |
Uses the video codec tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
video_profile |
Uses the video profile tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
audio_codec |
Uses the audio codec tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
audio_profile |
Uses the audio profile tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
1 Filters using the special episodes
/tracks
filter with the default percent.
2 Also filters out missing movies/shows from being added to Radarr/Sonarr. These Values also cannot use the count
modifiers.
Tag Filters
Tag filters can be used with either no modifier or with .not
.
Tag filters can take multiple values as a list or a comma-separated string.
Modifier
Tag Modifier | Description |
---|---|
No Modifier | Matches every item where the attribute matches the given string |
.not |
Matches every item where the attribute does not match the given string |
.regex |
Matches every item where one value of this attribute matches the regex. |
.count_lt |
Matches every item where the attribute count is less than the given number |
.count_lte |
Matches every item where the attribute count is less than the given number |
.count_gt |
Matches every item where the attribute count is greater than the given number |
.count_gte |
Matches every item where the attribute count is greater than or equal to the given number |
Attribute
Tag Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
actor |
Uses the actor tags to match | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
collection |
Uses the collection tags to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
content_rating |
Uses the content rating tags to match | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
network |
Uses the network tags to match | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
country |
Uses the country tags to match | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ |
director |
Uses the director tags to match | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ |
genre |
Uses the genre tags to match | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ |
label |
Uses the label tags to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
producer |
Uses the actor tags to match | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ |
year 3 |
Uses the year tag to match | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
writer |
Uses the writer tags to match | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ |
resolution |
Uses the resolution tag to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
audio_language |
Uses the audio language tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
subtitle_language |
Uses the subtitle language tags to match | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
tmdb_genre 2 |
Uses the genres from TMDb to match | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
tmdb_keyword 2 |
Uses the keywords from TMDb to match | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
origin_country 2 |
Uses TMDb origin country ISO 3166-1 alpha-2 codes to match Example: origin_country: us |
❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
imdb_keyword 2 |
Uses the keywords from IMDb to match See Special for more attributes | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
1 Filters using the special episodes
filter with the default percent.
2 Also filters out missing movies/shows from being added to Radarr/Sonarr. These Values also cannot use the count
modifiers.
3 You can use current_year
to have PMM use the current years value. This can be combined with a -#
at the end to subtract that number of years. i.e. current-2
Boolean Filters
Boolean Filters have no modifiers.
Attribute
Boolean Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
has_collection |
Matches every item that has or does not have a collection | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
has_edition |
Matches every item that has or does not have an edition | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
has_dolby_vision |
Matches every item that has or does not have a dolby vision | ✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
has_overlay |
Matches every item that has or does not have an overlay | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
1 Filters using the special episodes
filter with the default percent.
Date Filters
Date filters can be used with either no modifier or with .not
, .before
, .after
, or .regex
.
Date filters can NOT take multiple values.
Modifier
Date Modifier | Description | Format |
---|---|---|
No Modifier | Matches every item where the date attribute is in the last X days | Format: number of days e.g. 30 |
.not |
Matches every item where the date attribute is not in the last X days | Format: number of days e.g. 30 |
.before |
Matches every item where the date attribute is before the given date | Format: MM/DD/YYYY or today for the current daye.g. 01/01/2000 |
.after |
Matches every item where the date attribute is after the given date | Format: MM/DD/YYYY or today for the current daye.g. 01/01/2000 |
.regex |
Matches every item where the attribute matches the regex given | N/A |
Attribute
Date Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
release |
Uses the release date attribute (originally available) to match | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ |
added |
Uses the date added attribute to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
last_played |
Uses the date last played attribute to match | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
first_episode_aired 1 |
Uses the first episode aired date to match | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
last_episode_aired 1 |
Uses the last episode aired date to match | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
last_episode_aired_or_never 1 |
Similar to last_episode_aired but also includes those that haven't aired yet |
❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
1 Also filters out missing movies/shows from being added to Radarr/Sonarr.
Number Filters
Number filters must use .gt
, .gte
, .lt
, or .lte
as a modifier.
Number filters can NOT take multiple values.
Modifier
Number Modifier | Description | Format |
---|---|---|
No Modifier | Matches every item where the number attribute is equal to the given number | Format: number e.g. 30 , 1995 , or 7.5 |
.not |
Matches every item where the number attribute is not equal to the given number | Format: number e.g. 30 , 1995 , or 7.5 |
.gt |
Matches every item where the number attribute is greater than the given number | Format: number e.g. 30 , 1995 , or 7.5 |
.gte |
Matches every item where the number attribute is greater than or equal to the given number | Format: number e.g. 30 , 1995 , or 7.5 |
.lt |
Matches every item where the number attribute is less than the given number | Format: number e.g. 30 , 1995 , or 7.5 |
.lte |
Matches every item where the number attribute is less than or equal to the given number | Format: number e.g. 30 , 1995 , or 7.5 |
Attribute
Number Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
year 3 |
Uses the year attribute to match minimum: 1 |
✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
tmdb_year 23 |
Uses the year on TMDb to match minimum: 1 |
✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
critic_rating |
Uses the critic rating attribute to match0.0 - 10.0 |
✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ |
audience_rating |
Uses the audience rating attribute to match0.0 - 10.0 |
✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
user_rating |
Uses the user rating attribute to match0.0 - 10.0 |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
tmdb_vote_count 2 |
Uses the tmdb vote count to match minimum: 1 |
✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
plays |
Uses the plays attribute to match minimum: 1 |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
duration |
Uses the duration attribute to match using minutes minimum: 0.0 |
✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ✅ |
channels |
Uses the audio channels attribute to match minimum: 0 |
✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
height |
Uses the height attribute to match minimum: 0 |
✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
width |
Uses the width attribute to match minimum: 0 |
✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
aspect |
Uses the aspect attribute to match minimum: 0.0 |
✅ | ✅1 | ✅1 | ✅ | ❌ | ❌ | ❌ |
versions |
Uses the number of versions found to match minimum: 0 |
✅ | ✅1 | ✅1 | ✅ | ✅1 | ✅1 | ✅ |
1 Filters using the special episodes
filter with the default percent.
2 Also filters out missing movies/shows from being added to Radarr/Sonarr.
3 You can use current_year
to have PMM use the current years value. This can be combined with a -#
at the end to subtract that number of years. i.e. current-2
Special Filters
Special Filters each have their own set of rules for how they're used.
Attribute
Special Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track |
---|---|---|---|---|---|---|---|---|
history |
Uses the release date attribute (originally available) to match dates throughout historyday : Match the Day and Month to Today's Datemonth : Match the Month to Today's Date1-30 : Match the Day and Month to Today's Date or 1-30 days before Today's Date |
✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ |
episodes |
Uses the item's episodes attributes to match Use the percentage attribute given a number between 0-100 to determine the percentage of an items episodes that must match the sub-filter. |
❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
seasons |
Uses the item's seasons attributes to match Use the percentage attribute given a number between 0-100 to determine the percentage of an items seasons that must match the sub-filter. |
❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
tracks |
Uses the item's tracks attributes to match Use the percentage attribute given a number between 0-100 to determine the percentage of an items tracks that must match the sub-filter. |
❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ |
albums |
Uses the item's albums attributes to match Use the percentage attribute given a number between 0-100 to determine the percentage of an items albums that must match the sub-filter. |
❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ |
original_language 1original_language.not 1 |
Uses TMDb original language ISO 639-1 codes to match Example: original_language: en, ko |
✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
tmdb_status 1tmdb_status.not 1 |
Uses TMDb Status to match Values: returning , planned , production , ended , canceled , pilot |
❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
tmdb_type 1tmdb_type.not 1 |
Uses TMDb Type to match Values: documentary , news , production , miniseries , reality , scripted , talk_show , video |
❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
imdb_keyword 12 |
Uses the keywords from IMDb to matchkeywords : list of keywords to matchminimum_votes : minimum number of votes keywords must haveminimum_relevant : minimum number of relevant votes keywords must haveminimum_percentage : minimum percentage of relevant votes keywords must have |
✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
1 Also filters out missing movies/shows from being added to Radarr/Sonarr.
2 Also is a Tag Filter and can use all of those modifiers.
Collection Filter Examples
A few examples are listed below:
collections:
1080p Documentaries:
plex_search:
all:
genre: Documentary
summary: A collection of 1080p Documentaries
filters:
resolution: 1080
collections:
Daniel Craig only James Bonds:
imdb_list: https://www.imdb.com/list/ls006405458/
filters:
actor: Daniel Craig
collections:
French Romance:
plex_search:
all:
genre: Romance
filters:
audio_language: Français
collections:
Romantic Comedies:
plex_search:
all:
genre: Romance
filters:
genre: Comedy
collections:
9.0 Movies:
plex_all: true
filters:
rating.gte: 9
collections:
Summer 2020 Movies:
plex_all: true
filters:
release.after: 5/1/2020
release.before: 8/31/2020
collections:
Movies Released in the Last 180 Days:
plex_all: true
filters:
release: 180
collections:
Good Adam Sandler Romantic Comedies:
plex_search:
all:
genre: Romance
actor: Adam Sandler
filters:
genre: Comedy
rating.gte: 7
collections:
Movies with Commentary:
plex_all: true
filters:
audio_track_title: Commentary