{% extends "users/base.html" %} {% load static %} {% load app_tags %} {% block title %} Integrations - Yamtrack {% endblock title %} {% block settings_content %} {% url 'jellyfin_webhook' request.user.token as jellyfin_webhook_path %} {% absolute_app_url jellyfin_webhook_path as jellyfin_webhook_url %} {% url 'plex_webhook' request.user.token as plex_webhook_path %} {% absolute_app_url plex_webhook_path as plex_webhook_url %} {% url 'emby_webhook' request.user.token as emby_webhook_path %} {% absolute_app_url emby_webhook_path as emby_webhook_url %}
{% include "app/icons/padlock.svg" with classes="w-6 h-6 text-indigo-400 mr-3" %}

Token

This token is used to authenticate webhook requests from your media servers.

{% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}
{% include "app/icons/error.svg" with classes="w-4 h-4 mr-2 shrink-0" %}

Regenerating will invalidate the previous token

{% csrf_token %}
{% include "app/icons/server.svg" with classes="w-6 h-6 text-indigo-400 mr-3" %}

Media Servers

Connect your media servers to automatically track your watching progress.

{% include "app/icons/server.svg" with classes="w-5 h-5 text-indigo-400 mr-2" %}

Jellyfin

Connect Jellyfin to automatically track your watching progress.

Webhook Events

Play and Stop events are always processed. Enable these to sync manual watched changes from the unofficial Webhooks plugin.

{% csrf_token %}
{% include "app/icons/circle-check.svg" with classes="w-5 h-5 mr-2" %} Process MarkPlayed events

Mark media as watched when it is manually marked played in Jellyfin.

{% include "app/icons/error.svg" with classes="w-5 h-5 mr-2 text-amber-400" %} Process MarkUnplayed events

Remove watched progress when it is manually marked unplayed in Jellyfin. This event can delete media from Yamtrack.

Official Webhook Plugin

  1. You will need to have TMDB and TVDB as metadata providers in Jellyfin.
  2. Install the Webhook plugin from the 'Jellyfin Stable' repo via your server's Plugin Catalog.
  3. Restart your server, then configure the plugin:
    • Click on the "Add Generic Destination" button to create a new webhook.
    • Name: Yamtrack
    • {# djlint:off #}
    • URL: {% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}
    • {# djlint:on #}
    • Notification Type: Playback Start and Playback Stop
    • User Filter: Your Jellyfin User
    • Finally, under the "Template" section, paste the following code.
    • {% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}

Unofficial Webhooks Plugin

  1. You will need to have TMDB and TVDB as metadata providers in Jellyfin.
  2. Add this repository link to your "Plugins Catalog" in Jellyfin settings.
  3. From your "Plugins Catalog", install the Unofficial Webhooks plugin.
  4. Restart your server, then configure the plugin:
      {# djlint:off #}
    • URL: {% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}
    • {# djlint:on #}
    • Payload format: Default
    • Listen to events only for: Your Jellyfin User
    • Events: Play, Stop, MarkPlayed and MarkUnplayed
{% include "app/icons/server.svg" with classes="w-5 h-5 text-indigo-400 mr-2" %}

Plex

Connect Plex to automatically track your watching progress.

Plex Usernames

{% csrf_token %}

This username (or several, comma separated) will be used to filter which events are sent to your webhook.

Setup Instructions

  1. You will need to have a PlexPass in order to have webhooks enabled
  2. Go to Settings > Server > Network and enable Webhooks
  3. In Plex settings, go to Webhooks.
  4. In the Webhooks section, click on "Add Webhook" and enter the following URL:
    • {% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}
{% include "app/icons/server.svg" with classes="w-5 h-5 text-indigo-400 mr-2" %}

Emby

Connect Emby to automatically track your watching progress.

Setup Instructions

  1. In Emby, go to Settings > Notifications
  2. In the Notifications section, click on "Add Notification"
  3. In the Notification settings:
      {# djlint:off #}
    • URL: {% include "app/icons/copy.svg" with classes="w-5 h-5 text-gray-400 group-hover:text-indigo-400 transition-colors" %}
    • {# djlint:on #}
    • Request content type: multipart/form-data
    • Events: Play and Stop
    • Limit user events to: Your Emby User
    • "Limit library events to" and "Limit devices events to" are optional
{% endblock settings_content %} {% block js %} {% endblock js %}