Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,6 @@ jobs:
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./site
cname: gh.notifiarr.wiki
cname: notifiarr.wiki
user_name: Notifiarr
user_email: notifiarr+github-actions[bot]@users.noreply.github.com
63 changes: 63 additions & 0 deletions docs/.markdownlint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
"first-line-h1": false,
"no-bare-urls": false,
"no-inline-html": false,
"code-block-style": {
"style": "fenced"
},
"code-fence-style": {
"style": "backtick"
},
"emphasis-style": {
"style": "asterisk"
},
"extended-ascii": {
"ascii-only": true
},
"fenced-code-language": {
"language_only": true
},
"heading-style": {
"style": "atx"
},
"hr-style": {
"style": "---"
},
"line-length": {
"strict": false,
"code_blocks": false,
"line_length": 410
},
"link-image-style": {
"collapsed": false,
"shortcut": false,
"url_inline": false
},
"no-duplicate-heading": {
"siblings_only": true
},
"ol-prefix": {
"style": "one_or_ordered"
},
"proper-names": {
"code_blocks": false,
"names": [
"Cake.Markdownlint",
"CommonMark",
"JavaScript",
"Markdown",
"markdown-it",
"markdownlint",
"Node.js"
]
},
"reference-links-images": {
"shortcut_syntax": true
},
"strong-style": {
"style": "asterisk"
},
"ul-style": {
"style": "dash"
}
}
54 changes: 33 additions & 21 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

Client:<br>
##### Client

![GitHub commit activity](https://img.shields.io/github/commit-activity/t/notifiarr/notifiarr?label=Commits&style=for-the-badge&color=526cfe)
![GitHub commit activity (branch)](https://img.shields.io/github/commit-activity/t/notifiarr/notifiarr/main?label=Stable%20(:latest)&style=for-the-badge&color=526cfe)
![GitHub commit activity (branch)](https://img.shields.io/github/commit-activity/t/notifiarr/notifiarr/unstable?label=Unstable%20(:unstable)&style=for-the-badge&color=526cfe)
Expand All @@ -11,18 +12,24 @@ Client:<br>
![GitHub issues](https://img.shields.io/github/issues-pr-closed/Notifiarr/notifiarr?&logo=github&style=for-the-badge&color=526cfe)
[![GitHub license](https://img.shields.io/github/license/Notifiarr/notifiarr?&logo=github&style=for-the-badge&color=526cfe)](https://github.com/Notifiarr/notifiarr/blob/main/LICENSE)

Site:<br>
##### Site

![GitHub issues](https://img.shields.io/github/issues/Notifiarr/website?&logo=github&style=for-the-badge&color=526cfe)
![GitHub issues](https://img.shields.io/github/issues-closed/Notifiarr/website?&logo=github&style=for-the-badge&color=526cfe)

Support:<br>
##### Support

[![Discord](https://img.shields.io/discord/764440599066574859?label=Discord&style=for-the-badge&color=7F00FF)](https://notifiarr.com/discord)

![Logo](assets/logo.png)

# Notifiarr

You just found one of the coolest tools on the Internet for a homelab enthusiast. We do notifications. We do them right. We've been doing then for years and we'll keep doing them for years to come. Notifiarr provides native custom integrations with dozens, maybe hundreds of applications and websites. That means these applications or websites can send data to Notifiarr, and we'll format a message according to your configuration then send it to your chat server.
You just found one of the coolest tools on the Internet for a homelab enthusiast.
We do notifications. We do them right. We've been doing then for years and we'll keep doing them for years to come.
Notifiarr provides native custom integrations with dozens, maybe hundreds of applications and websites.
That means these applications or websites can send data to Notifiarr, and we'll format a message according to
your configuration then send it to your chat server.

What sets us apart from direct integrations are the options we provide to format your messages. We also maintain and provide, for your conveince, a local agent you may run on any server or network you wish to monitor. The agent is fully configurable to collect network and system data so you can get health reports from your servers.

Expand All @@ -37,28 +44,33 @@ we have a big community, if you need assistance you can ask there by opening a s

## From the author

I built Notifiarr in late 2019 for [myself](https://github.com/austinwbest), and it was used by only myself until August of 2020 when I opened it up for others to use. My goal has always been to have a single location for common notification needs, so I am not jumping around 20 apps to do things. [Captain](https://github.com/davidnewhall) joined the crew in December 2020, and the two of us run the servers and write the code for the client and website.
I built Notifiarr in late 2019 for [myself](https://github.com/austinwbest), and it was used by only myself until
August of 2020 when I opened it up for others to use. My goal has always been to have a single location for common
notification needs, so I am not jumping around 20 apps to do things. [Captain](https://github.com/davidnewhall)
joined the crew in December 2020, and the two of us run the servers and write the code for the client and website.

## Integrations

!!! note

[How to setup integrations](pages/integrations/basicUsage.md#how-to-setup-integrations)

## Additional Features

* Fully configurable on what triggers to get notifications for. Each integration and many triggers in them can go to their own channels.
* Layout configuration for some notifications
* Content configuration for most notifications (color, content, etc)
* Media Requests Bot - Discord Bot for all 4 \*Arr apps with:
* Media Requests
* User Permissions
* Approvals
* Sonarr Profiles
* Default Options
* Series Following
* Discover features
* Multi-Instance Support
* Minimal Access - No \*Arr apikeys or anything of the sort is used or saved on the site. All requests to the client are verified with your Notifiarr apikey and thrown out if they don't match up
* TRaSH Custom Format Sync [*\*Patron Feature\**](pages/faq/faq.md#q-what-are-the-user-level-differences) - Automated continuous add/sync for the custom formats TRaSH has made to use with Radarr
* Radarr Collections - A fully automated way to monitor all your Radarr collections with auto add new items to your library as they are put into the collection on TMDb for any monitored collections, etc.
- Fully configurable on what triggers to get notifications for. Each integration and many triggers in them can go to their own channels.
- Layout configuration for some notifications
- Content configuration for most notifications (color, content, etc)
- Media Requests Bot - Discord Bot for all 4 \*Arr apps with:
- Media Requests
- User Permissions
- Approvals
- Sonarr Profiles
- Default Options
- Series Following
- Discover features
- Multi-Instance Support
- Minimal Access - No \*Arr apikeys or anything of the sort is used or saved on the site.
All requests to the client are verified with your Notifiarr apikey and thrown out if they don't match up
- TRaSH Custom Format Sync [*\*Patron Feature\**](pages/faq/faq.md#q-what-are-the-user-level-differences) -
Automated continuous add/sync for the custom formats TRaSH has made to use with Radarr
- Radarr Collections - A fully automated way to monitor all your Radarr collections with auto add new
items to your library as they are put into the collection on TMDb for any monitored collections, etc.
4 changes: 2 additions & 2 deletions docs/pages/client/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ When a new docker image is deployed with an empty /config folder mounted, the ap
- You can use env variables, the conf file, or the UI
- Must provide the "All" API key from your [Profile page on notifiarr.com](https://notifiarr.com/user.php?page=profile)
- **The Notifiarr application uses the API key for bi-directional authorization between the Site and the Client.**

!!! danger "Unraid Users"
You must configure the Notifiarr API Key in the Unraid Template/ Container Settings. If you wish to use Plex then you'll also need to set the Plex Token and Plex URL in the template as well. The other integrations can be defined in notifiarr.conf

Expand Down Expand Up @@ -131,7 +131,7 @@ Recommend not messing with these unless instructed to do so.
| max_body | `DN_MAX_BODY` | Unlimited, `0` / Maximum debug-log body size (integer) for payloads to and from notifiarr.com |
| | `TMPDIR` | `%TMP%` on Windows. Varies depending on system; must be writable if using Backup Corruption Check |

_Note: You may disable the GUI (menu item) on Windows by setting the env variable `USEGUI` to `false`._
*Note: You may disable the GUI (menu item) on Windows by setting the env variable `USEGUI` to `false`.*

#### MySQL Snapshots

Expand Down
9 changes: 7 additions & 2 deletions docs/pages/client/gui.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ notifiarr.exe --reset
docker exec Notifiarr /notifiarr --reset
docker kill --signal=HUP Notifiarr
```

```bash
# Example output with new password:
[INFO] 2023/09/08 09:32:11 New 'admin' user password: four38=Draw
Expand Down Expand Up @@ -135,7 +135,12 @@ The General section is more catered to the ingress and egress options/functional
!!! warning
This API must be an All key!

1. `Extra Keys` - This application uses the Notifiarr.com API key (set above) for incoming authentication. It's not safe to give that key to any other website, person, or third party service. This is because that key is also used for authentication to the Notifiarr.com API. If you want third parties to authenticate to this application's API, you should create custom keys for each integration. As of March 8, 2022, there are no existing integrations, so this is for future use. You can use this section to add extra API keys. Whatever you want. Separate them with newlines or spaces.
1. `Extra Keys` - This application uses the Notifiarr.com API key (set above) for incoming authentication.
It's not safe to give that key to any other website, person, or third party service.
This is because that key is also used for authentication to the Notifiarr.com API.
If you want third parties to authenticate to this application's API, you should create custom keys for each integration.
As of March 8, 2022, there are no existing integrations, so this is for future use. You can use this section to add
extra API keys. Whatever you want. Separate them with newlines or spaces.
1. `Bind Address` - This is the IP and port the app will listen on. 0.0.0.0 means all IPs, and you should use that in almost all cases! Change the port if the default 5454 does not work for you.
1. `URL Base` - This application serves HTTP on / by default. You can change that by typing in something else here.
1. `Upstreams` - If Notifiarr client is behind a reverse proxy (swag, nginx, etc), then you should add that proxy IP here. You can also specify full networks. This controls which IP is written to the web server log file (requestor or x-forwarded-for header). It also allows the x-webauth-user header for proxy authentication. Separate with spaces or new lines.
Expand Down
4 changes: 2 additions & 2 deletions docs/pages/client/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ WantedBy=default.target
1. Type `systemctl --user enable notifiarr`
1. Type `systemctl --user start notifiarr`
1. Type `systemctl --user status notifiarr` to check if there are any errors.
1. On your browser go to http://[ultraseedbox url]:5454
1. On your browser go to `http://your-ultraseedbox-url:5454`
1. Log into your Notifarr client and change the base url to /notifiarr and save changes
1. Go back to your ssh console
1. Type `cd /home/$USER/.apps/nginx/proxy.d`
Expand Down Expand Up @@ -296,4 +296,4 @@ deny all; # remove this line if you really want to expose the API.
```

1. Type `systemctl --user restart nginx`
1. Now you should be able to browse to https://[ultraseedbox url]/notifiarr
1. Now you should be able to browse to `https://your-ultraseedbox-url/notifiarr`
6 changes: 3 additions & 3 deletions docs/pages/client/reverseProxy.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ server {
set $upstream_app notifiarr;
set $upstream_port 5454;
set $upstream_proto http;

location / {
# enable the next two lines for http auth
#auth_basic "Restricted";
Expand All @@ -117,7 +117,7 @@ server {
# enable the next two lines for organizr auth
#include /config/nginx/orgauth.conf;
#auth_request /organizr-auth/0;

# enable the next two lines for ldap auth
#auth_request /auth;
#error_page 401 =200 /ldaplogin;
Expand All @@ -129,7 +129,7 @@ server {
proxy_set_header X-WebAuth-User $auth_user;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}

# API path must not be protected by auth, authelia, ldap, etc.
location ~ (/notifiarr)?/api {
deny all; # remove this line if you really want to expose the API.
Expand Down
4 changes: 2 additions & 2 deletions docs/pages/client/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ There are non-integration related settings and triggers are configured on the No
1. Open the conf file, set your Notifiarr API Key and restart the client.

```conf
## This API key must be copied
## This API key must be copied
from your notifiarr.com account.
api_key = "api-key-from-notifiarr.com"
```
Expand All @@ -47,7 +47,7 @@ When a new docker image is deployed and an empty /config folder is mounted the a
- Must provide the "All" API key from your [Profile page on notifiarr.com](https://notifiarr.com/user.php?page=profile)
- **The Notifiarr application uses the API key for bi-directional authorization between the Site and the Client.**

!!! warning
!!! warning
**Unraid Users**
You must configure the Notifiarr API Key in the Unraid Template/ Container Settings. If you wish to use Plex then you'll also need to set the Plex Token and Plex URL in the template as well. The other integrations can be defined in notifiarr.conf

Expand Down
8 changes: 6 additions & 2 deletions docs/pages/discordbot/permissions.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
# Discord Permissions

Getting permissions correct for your setup can be a struggle depending on how you have your Discord server setup. If you want to run a simple test to see if you have permission issues, set the Notifiarr role to have `Admin` permission and see whether it solves your issue. If everything works, this means you simply need to adjust permissions for the the Notifiarr role and you don't need to give it full admin permissions
Getting permissions correct for your setup can be a struggle depending on how you have your Discord server setup.
If you want to run a simple test to see if you have permission issues, set the Notifiarr role to have `Admin`
permission and see whether it solves your issue. If everything works, this means you simply need to adjust permissions
for the the Notifiarr role and you don't need to give it full admin permissions.

---

To update the integration's permissions, click on your server name at the top and pick `Server Settings > Roles`. Click on the `Notifiarr` role and then pick `Permissions`.
To update the integration's permissions, click on your server name at the top and pick `Server Settings > Roles`.
Click on the `Notifiarr` role and then pick `Permissions`.

## **Required Permissions**

Expand Down
5 changes: 4 additions & 1 deletion docs/pages/faq/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,10 @@ If session info is missing from notifications or the sessions notification is no
- Make sure you have selected the **Activity** checkbox in the Plex section of the [Client Settings](../../pages/website/clientConfig.md)
- Try to increase the **Activity Delay** in the Plex section of the [Client Settings](https://notifiarr.wiki/en/Website/ClientConfiguration) as this will give Plex more time to get the session available in the endpoint
- Note 1: The sessions notifications will only send when there is at least one item being played or paused
- Note 2: It doesn't matter what Tautulli shows or the Plex Dashboard shows, they both use the same sessions endpoint. If you where to look at them at the same time as the notification is sent (when it doesn't work) they would also not show the session yet. How long it takes Plex & your (possibly low powered or over worked) server to make the session available in the endpoint is out of our control which is why we added the delay option
- Note 2: It doesn't matter what Tautulli shows or the Plex Dashboard shows, they both use the same sessions endpoint.
If you where to look at them at the same time as the notification is sent (when it doesn't work) they would also not
show the session yet. How long it takes Plex & your (possibly low powered or over worked) server to make the session
available in the endpoint is out of our control which is why we added the delay option

## Q. What are the user level differences

Expand Down
7 changes: 2 additions & 5 deletions docs/pages/integrations/authentik.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# Authentik

!!! info

This integration is for setting up discord notifications for Authentik
This integration is for setting up discord notifications for Authentik

---

Expand All @@ -21,9 +20,8 @@
## Instructions

!!! info "Authentik Notifications"

Detailed wiki for [Authentik Notifications](https://docs.goauthentik.io/docs/sys-mgmt/events/notifications)

![instructions.png](../../assets/screenshots/integrations/authentik/instructions.png)

1. Instructions on how too set webhook notifications in Authentik
Expand All @@ -40,7 +38,6 @@ Click the cog icon too open the configuration settings
![configuration.png](../../assets/screenshots/integrations/authentik/configuration.png)

1. enabling each `trigger field`, and using the `customize toggle` too drop down the `notification fields` for each trigger

2. choosing the color of the notification

---
Expand Down
2 changes: 1 addition & 1 deletion docs/pages/integrations/autobrr.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ Here you can customize the layout and color of your notifcation for each avaiabl

### Test Notification Examples

![examples.png](../../assets/screenshots/integrations/autobrr/examples.png)
![examples.png](../../assets/screenshots/integrations/autobrr/examples.png)
1 change: 0 additions & 1 deletion docs/pages/integrations/basicUsage.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
# How To Setup Integrations

!!! info

All the integrations follow the same layout and logic so this means once you understand how one of them works you will be able to figure out how to setup any of them.

---
Expand Down
5 changes: 2 additions & 3 deletions docs/pages/integrations/bazarr.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# Bazarr

!!! info

This integration allows for notifications from Bazarr and will also add reactions to notifications if a subtitle was found for it and you are using reactions.

---

## Current Versions

![version](https://img.shields.io/badge/dynamic/json?query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Fhotio%2Fbazarr%2Frelease%2FVERSION.json&label=Latest%20Version&style=for-the-badge&color=526cfe){ .off-glb } ![version](https://img.shields.io/badge/dynamic/json?query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Fhotio%2Fbazarr%2Fnightly%2FVERSION.json&label=Latest%20Version&style=for-the-badge&color=526cfe){ .off-glb }
![version](https://img.shields.io/badge/dynamic/json?query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Fhotio%2Fbazarr%2Frelease%2FVERSION.json&label=Latest%20Version&style=for-the-badge&color=526cfe){ .off-glb }
![version](https://img.shields.io/badge/dynamic/json?query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Fhotio%2Fbazarr%2Fnightly%2FVERSION.json&label=Latest%20Version&style=for-the-badge&color=526cfe){ .off-glb }

---

Expand Down Expand Up @@ -60,5 +60,4 @@ Reaction example:
1. Test the notification from Notifiarr to Discord

!!! note

This will ensure your server, channel and permissions are set properly in Discord
2 changes: 0 additions & 2 deletions docs/pages/integrations/betterstack.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
# Better Stack

!!! info

This integration allows for notifications from Better stack utilizing their webhook system

---
Expand Down Expand Up @@ -32,5 +31,4 @@ Click the **cog icon** to open the configuration options for Better Uptime.
1. Better Uptime team id that is used to link the Incident in the notification

!!! note

This integration sends a single notification for all triggers. After the first one is sent, the rest will update the existing notification in the chain.
Loading