Feature Requests
Planned

Jellyfin/Plex/Trakt integration (webhook / scrobble)

Automatically mark an episode or movie as watched from a Jellyfin/Plex webhook or a Trakt scrobble, instead of manual tracking. Strong potential as a self-hosted "TV Time replacement".

Why matching is cheap

MediaExternalId is already multi-source (TMDB / TVDB / IMDB), and the Jellyfin Webhook plugin sends Provider_tmdb / Provider_tvdb: no fuzzy search needed. The integration writes an EpisodeWatch, and everything downstream follows (XP, activity feed, stats).

Prerequisite: a write scope for API keys

Today an API key only has <resource>:read scopes, and the write column of the access matrix is greyed out. This needs:

  • a library:write scope at minimum, enabled in the matrix (ApiKeyCreateModal.svelte);
  • @AllowApiKey extended to it, and POST /api/v1/… routes opened.

The Jellyfin Webhook plugin can send an Authorization header; Plex webhooks cannot, so Plex needs either a key in the URL or a dedicated endpoint.

This is what would make Loomkeep a real TV Time replacement for homelabs.

Relevant code: MediaExternalId, library/library.service.ts, EpisodeWatch, api-keys/api-key-access.decorator.ts.

0 Comments

Sign in to comment

No comments yet. Be the first to share your thoughts!