Skip to content

feat: Seerr integration + Radarr Search vs Add#69

Merged
sdblepas merged 3 commits intomainfrom
feature/seerr-radarr-search
Apr 27, 2026
Merged

feat: Seerr integration + Radarr Search vs Add#69
sdblepas merged 3 commits intomainfrom
feature/seerr-radarr-search

Conversation

@sdblepas
Copy link
Copy Markdown
Owner

Closes #67, #68

Seerr integration (issue #68)

Seerr is the unified successor to Overseerr and Jellyseerr. Added as a first-class integration while keeping the legacy options (now labelled as such).

  • New POST /api/seerr/add — identical API shape to Overseerr
  • SEERR config section (SEERR_ENABLED / SEERR_URL / SEERR_API_KEY)
  • Seerr section in the config UI with teal badge; Overseerr & Jellyseerr now show (legacy) with a deprecation notice
  • → Seerr button on poster cards, suggestion cards, and movie modal
  • Batch → Seerr button in the multi-select bar (hidden unless enabled)
  • btn-seerr teal colour scheme

Radarr Search vs Add (issue #67)

When a movie is already in Radarr (monitored but not yet downloaded/in Plex), the button now shows ⟳ Search instead of + Radarr, which triggers a download search on the existing monitored entry rather than trying to add a duplicate.

  • New GET /api/radarr/library — returns all TMDB IDs in the primary Radarr instance; cached 5 min, invalidated immediately after a successful add
  • New POST /api/radarr/search — resolves the Radarr movie ID from TMDB ID, then calls MoviesSearch command
  • _fetchRadarrLibrary() fires in the background after results load (non-blocking)
  • posterCard() and suggestionCard() check _radarrLibTmdbIds set to decide which button to show

Tests

All 280 existing unit tests pass. No new unit tests added for the Seerr/search endpoints as they follow the same pattern as the existing Overseerr/Radarr tests already in the suite.

🤖 Generated with Claude Code

benjamin-elharrar and others added 3 commits April 27, 2026 06:26
**Seerr (#68)**
- New POST /api/seerr/add backend endpoint (same API as Overseerr)
- SEERR config section (SEERR_ENABLED / SEERR_URL / SEERR_API_KEY)
- Seerr config section in UI (teal badge); Overseerr & Jellyseerr now
  labelled "(legacy)" with deprecation hints
- → Seerr button on poster cards, suggestion cards, and movie modal
- Batch "→ Seerr" button in selection bar (hidden unless enabled)
- btn-seerr teal colour scheme in CSS

**Radarr Search vs Add (#67)**
- New GET /api/radarr/library — returns TMDB IDs of all movies in
  Radarr; cached 5 min, invalidated on successful add
- New POST /api/radarr/search — triggers MoviesSearch command in Radarr
  for an already-monitored movie (resolves Radarr ID via tmdbId param)
- Frontend _fetchRadarrLibrary() fires in background after results load
- posterCard() and suggestionCard() check _radarrLibTmdbIds:
  if movie is already in Radarr → shows "⟳ Search" instead of "+ Radarr"
- searchInRadarr() mutation handles the search API call and feedback

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tWatch

Provider logo imgs are wrapped in <a href='justwatch.com'> anchors, so
the old selector matched 4 elements (strict mode violation). Target the
text link specifically with :has-text('JustWatch').

[skip ci]
@sdblepas sdblepas merged commit 2f05cf6 into main Apr 27, 2026
7 checks passed
@sdblepas sdblepas deleted the feature/seerr-radarr-search branch April 27, 2026 03:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] Radarr Search v. Add Consideration

1 participant