Skip to main content

Filters

Most fields can take a comma separated list like value1, value2.

The comma separated lists supports wildcards, where * means 0 or more characters and ? means exactly one character. An example would be: *this*,that?movie. In this case we would match any title containing this (or tHiS) or in the second case, any title which matches exactly like That Movie or tHaT MoViE or even THAT.MOVIE.

If no value is specified in a field, then that field will match any/all possible values. That means if nothing but Filter Name and Indexers is given, then the filter it will match all/any releases for the specified indexers.

Please note that all filters are case-insensitive, so write them however you desire. Another thing to note is that it is not possible to escape wildcard fields.

info

If you want to match a string partially, then don't forget to use the * around the before/after/around what you're looking for. If you want to match a string exactly, then try to avoid the use of the * wildcard character.


General

FieldDescriptionDefault value
Filter nameThe name of this filter.
EnabledIs this filter active?false
IndexersWhich indexers should this filter work for?
info

Note that all filters by default are DISABLED and you will have to enable them manually.

Rules

Some basic filtering rules.

about size

Some indexers doesn't announce the size, so it needs to download the torrent file and parse it to get size if set. autodl-irssi works like this as well. To get around this some api's will be implemented for trackers that are problematic.

For TV and movies it's advised to use filters like resolution, source and codec since these often have known sizes.

FieldDescriptionDefault value
Max. sizeMaximum torrent size allowed. Supports units such as MB, MiB, GB, etc.
Min. sizeMinimum torrent size allowed. Supports units such as MB, MiB, GB, etc.
DelayNumber of seconds to wait before running actions.0
PriorityFilters are checked in order of priority. Positive and negative numbers allowed. Higher number = higher priority.0
Max downloadsNumber of max downloads as specified by the respective unit.0 (which means +Inf)
Max downloads perThe unit of time for counting the maximum downloads per filter.

TV/Movies

FieldDescriptionExamples
Movies/ShowsComma separated list of media names to match.e.g. That?Movie, *the*
YearsComma separated list of acceptable year ranges in the string.e.g. 2019,2020-2022
SeasonsComma separated list of acceptable TV show seasons in the string.e.g. 1,3-6
EpisodesComma separated list of acceptable TV show episodes in the string.e.g. 1,2,10-20
info

The Movies/Shows field operates on the parsed media title. This means it is guaranteed not contain dots and underscores, often found in release strings. However, it's still better to err on the safer side and use the ? wildcard character instead.

Quality

FieldDescription
ResolutionsWill match releases which contain any of the selected resolutions.
SourcesWill match releases which contain any of the selected sources.
CodecsWill match releases which contain any of the selected codecs.
ContainersWill match releases which contain any of the selected containers.
Match HDRWill match releases which contain any of the selected HDR designations.
Except HDRWon't match releases which contain any of the selected HDR designations (takes priority over Match HDR).
Match OtherWill match releases which contain any of the selected designations.
Except OtherWon't match releases which contain any of the selected Other designations (takes priority over Match Other).

Music

FieldDescriptionExamples
ArtistsComma separated list of media names to match.e.g. That?Artist
AlbumsComma separated list of acceptable year ranges in the string.e.g. That?Album, *the?album*
YearsComma separated list of acceptable years in the string.e.g. 2019,2020-2022

Quality

FieldDescription
FormatWill only match releases with any of the selected formats.
QualityWill only match releases with any of the selected qualities.
SourcesWill only match releases with any of the selected sources.
TypeWill only match releases with any of the selected types.
LogWhether Log must be included.
Log ScoreMatches Log percent for indexers that announce it. Check your indexer, the announced Log Score might not be in percent.
CueEnforces Cue requirement.
Perfect FLACOverrides all options about quality, source, format, and Cue/Log/Log score.

External

With external filters you can run scripts and webhooks to do your own custom filtering. If Expected exit status matches it will continue. If not it stops there.

All the variables and macros from actions are usable in these fields to inject dynamic variables.

Script

Run external script that does something. Use exit codes correctly, like exit 0 for no issues. In Linux, non-zero exit codes are considered not-ok/error etc.

See stop if disk is full for a good example of what it can do.

FieldDescriptionExamples
CommandCommand, full pathe.g. /usr/bin/myprogram
ArgumentsArguments.e.g. --name {{ .TorrentName }} --file {{ .TorrentPathName }}
Expected exit statusExpected exit status.e.g. 0

Webhook

Send a payload to some custom API and do more processing. Use status codes to trigger different behaviours.

Only supports POST requests for now.

FieldDescriptionExamples
HostHost.e.g. http://127.0.0.1:5000/api/filter
DataData, JSON.e.g. { "name": "{{ .TorrentName }}" }
Expected http statusExpected http status.e.g. 200

Advanced

* Full regex support (Golang flavour, check https://regex101.com)

FieldDescriptionExamplesAvailability
* Match releasesComma separated list of release names to match.e.g. *Movie*remux*, That Other movie, *that?game*Always
* Except releasesComma separated list of release names to ignore (takes priority over Match releases).e.g. Bad?Movie, *bad*Always
Match release groupsComma separated list of release groups to match.e.g. GROUP1, OTHERGROUPAlways
Except release groupsComma separated list of release groups to ignore (takes priority over Match releases).e.g. BADGROUP1, OTHERBADGROUPAlways
Match categoriesComma separated list of categories to match.e.g. tv,tv/1080pDepends on Indexer
Except categoriesComma separated list of categories to ignore (takes priority over Match releases).e.g. tv/anime,tv/sportsDepends on Indexer
Match tagsComma separated list of tags to match.e.g. action,romanceDepends on Indexer
Except tagsComma separated list of tags to ignore (takes priority over Match releases).e.g. foreignDepends on Indexer
Match uploadersComma separated list of uploaders to match.e.g. uploader1,otheruploaderDepends on Indexer
Except uploadersComma separated list of uploaders to ignore (takes priority over Match releases).e.g. anonymous,slow_uploaderDepends on Indexer
FreeleechShould this filter match only Freeleech releases?Depends on Indexer
Freeleech PercentAllowed Freeleech Percentage for this filter to match.e.g. 50%,75-100%Depends on Indexer, might not use percent.
caution

Don't combine Freeleech with Freeleech Percent! Freeleech is equal to setting Freeleech Percent to 100.