Skip to content

Tag Matching

If you tagged your URLs, they’re not going to be notified unless you explicitly reference them with —tag= (or -g). You can always check to see what URLs have been loaded using the all tag directive paired with —dry-run:

If you have access to the Apprise CLI (installed via pip install apprise) then you can easily trace what aligns with different tag combinations. The --dry-run will cause apprise to not perform any action, but merely list what matches to the terminal.

This simply lists all entries found in the apprise.txt file whether they have a tag or not:

Terminal window
apprise --dry-run --tag=all \
--config=/my/path/to/my/config/apprise.txt

Without a --tag specified, you’ll only match URLs that have no tag associated with them:

Terminal window
# List notifications that would otherwise be triggered without a tag specified:
apprise --dry-run \
--config=/my/path/to/my/config/apprise.txt

Now we can list all defined URLs that have the tag devops assigned to them:

Terminal window
apprise --dry-run --tag=devops \
--config=/my/path/to/my/config/apprise.txt

Once you have identified your tagging issue in your configuration to the point it lists correctly using the above commands above, you can send your notification by removing the --dry-run switch and add the --body (-b) at a minimum to send your notification(s).

General filter expressions follow:

FilterSelected services
--tag TagAHas TagA
--tag TagA,TagBHas TagA AND TagB
--tag 'TagA' --tag 'TagBHas TagA OR TagB
--tag 'TagA,TagC --tag TagBHas ( TagA AND TagC) OR TagB