> For the complete documentation index, see [llms.txt](https://docs.tautulli.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tautulli.com/using-tautulli/custom-notification-conditions.md).

# Custom Notification Conditions

## Overview

Tautulli allows you to define conditions that determine whether or not your Notifications will actually be sent.

The conditions are used to ***allow*** notifications through. For example:

* Allow notifications through if the `Username` `is` `alice`.
* Allow notifications through if the `Library Name` `is not` `4K Movies`

## Single conditions

The simplest use case is a single condition, allowing you to do things like not show Recently Added notifications for a specific library, or watched notifications for a specific user.

### Excluding a specific user

![image](/files/-MaRqXs842dUHV8HLFXK)

### Excluding a specific Library

![image](/files/-MaRqXs9zAYu7D0UpAxc)

### Custom Condition Logic

By default Tautulli uses `AND` to combine multiple conditions together, meaning that all conditions must evaluate to true in order for the notification to send. If you need more complex logic than that you can customize this in the *Condition Logic* setting.

### Warning on `is not`

Don't try to use multiple `is not` clauses for the same parameter and join them together with an `OR`! This will simply end up with the combination evaluating to `True` every single time.

For example let's say you have this setup: ![image](https://user-images.githubusercontent.com/427137/41248058-a358bde4-6d64-11e8-8c5f-d2153bdf4998.png)

* Play a song from `Music A`:

  ```
    {1} Library Name is not Music A = False
    {2} Library Name is not Music B = True
    Condition Logic = {False} or {True} = True = Notification is sent
  ```
* Play a song from `Music B`:

  ```
    {1} Library Name is not Music A = True
    {2} Library Name is not Music B = False
    Condition Logic = {True} or {False} = True = Notification is sent
  ```

If you want to use `is not` for multiple values simply put both values in the same value list within Tautulli: ![image](https://user-images.githubusercontent.com/427137/41247785-fa722e4a-6d63-11e8-9eae-cc0d07e6b2ad.png)

## Conditions and Triggers

Conditions apply to the entire notification agent, this means that if you want to have some Triggers have one condition (Recently Added limited by library) and other Triggers limited by a different condition (Watched wasn't a specific user) you need to add different Notification Agents for the different triggers. Tautulli makes this simple to setup by providing a Duplicate button on each Notification Agent's dialog.

### ⚠️ Available properties

Note: Not all properties apply to all triggers!

If you open the list of parameter descriptions the sections will tell you when the properties are available for conditions, but there is nothing in the interface that will prevent you from setting things up incorrectly!

For example, the `{username}` property is only available for things related to a Stream such as the Watched or Playback triggers. It is *not* available for things that have no stream details, such as the Recently Added trigger. If you set up a condition using a property that isn't available it's likely your notifications won't ever send!


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tautulli.com/using-tautulli/custom-notification-conditions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
