Title: Saving an indexer overwrites the stored API Key with the literal string "REDACTED"
Version: 1.2.2.0
Environment: QNAP NAS, Container Station (Docker)
Description
When editing an existing indexer (reproduced both with a manually-added Newznab indexer pointed directly at an indexer, and with an indexer imported from Prowlarr), the API Key field is displayed as masked dots on load. Clicking the reveal/eye icon on the field shows the literal text REDACTED rather than the real key or a proper mask character.
If the indexer is saved again — even without the user touching the API Key field — the stored key appears to be overwritten with the literal string "REDACTED" instead of the real key being preserved. After this happens, all subsequent Test/search actions for that indexer fail (searches return zero results), until the real API key is manually re-typed into the field and saved again.
This suggests the API response used to populate the edit form is returning a placeholder string (REDACTED) instead of omitting the field or using a non-literal mask, and the save/update request is not correctly excluding or preserving the untouched field — it appears to submit the placeholder value as if it were the real key.
Steps to reproduce
- Add a new indexer (Newznab/Torznab), pointing directly at the indexer (not via Prowlarr import — same result occurs either way)
- Enter a valid API Key
- Click Test → passes (200 response), confirmed via logs
- Click Save → saves successfully, no errors in logs
- Navigate away, then reopen the same indexer's edit form
- Observe the API Key field shows 6 dots; clicking the eye/reveal icon displays the text
REDACTED
- Click Test again on this reopened form (without re-entering the key) → fails
- Manually re-enter the real API key and Test again → passes
- If the indexer is saved again without re-entering the real key, the working key is lost and Test fails again until manually re-entered
Expected behavior
- The API Key field should either remain genuinely blank on reload (forcing explicit re-entry) or use a true visual mask that is excluded from the save payload unless changed by the user.
- Reopening and saving an indexer without touching the API Key field should never overwrite the real stored key with a placeholder string.
Actual behavior
- The field displays the literal string
REDACTED when revealed.
- Saving the indexer without modifying this field overwrites the real key with the placeholder text, breaking all subsequent searches for that indexer until the key is manually re-entered.
Supporting log snippet (indexer test/save cycle, no errors logged despite the key becoming non-functional afterward):
2026-08-07 17:06:06.699 +10:00 [INF] [Listenarr.Api.Features.Indexers.IndexersController] [IndexerTest] Testing indexer NZBFinder (Prowlarr) (impl=Newznab, url=http://192.168.20.15:9696/60/api)
2026-08-07 17:06:06.699 +10:00 [INF] [Listenarr.Api.Features.Indexers.IndexerTestWorkflow] [IndexerTest] GET http://192.168.20.15:9696/60/api UA=Listenarr/1.2.2.0 (+https://github.com/listenarrs/listenarr)
2026-08-07 17:06:07.279 +10:00 [INF] [Listenarr.Api.Features.Indexers.IndexerTestWorkflow] [IndexerTest] NZBFinder (Prowlarr) responded 200
2026-08-07 17:06:09.839 +10:00 [INF] [Listenarr.Api.Features.Indexers.IndexersController] Updated indexer 'NZBFinder (Prowlarr)' (ID: 12)
Note the "Updated indexer" log entry shows no error — the save is accepted at the API level, which supports the theory that the placeholder string REDACTED is being submitted and saved as a syntactically valid (but functionally broken) API key value, rather than the update failing outright.
Impact
Any time an existing indexer is opened and saved (even for unrelated changes, e.g. adjusting Priority or Categories) without the user manually re-entering the API key, the indexer silently loses its working credentials and searches return zero results with no obvious error shown to the user.
Title: Saving an indexer overwrites the stored API Key with the literal string "REDACTED"
Version: 1.2.2.0
Environment: QNAP NAS, Container Station (Docker)
Description
When editing an existing indexer (reproduced both with a manually-added Newznab indexer pointed directly at an indexer, and with an indexer imported from Prowlarr), the API Key field is displayed as masked dots on load. Clicking the reveal/eye icon on the field shows the literal text
REDACTEDrather than the real key or a proper mask character.If the indexer is saved again — even without the user touching the API Key field — the stored key appears to be overwritten with the literal string
"REDACTED"instead of the real key being preserved. After this happens, all subsequent Test/search actions for that indexer fail (searches return zero results), until the real API key is manually re-typed into the field and saved again.This suggests the API response used to populate the edit form is returning a placeholder string (
REDACTED) instead of omitting the field or using a non-literal mask, and the save/update request is not correctly excluding or preserving the untouched field — it appears to submit the placeholder value as if it were the real key.Steps to reproduce
REDACTEDExpected behavior
Actual behavior
REDACTEDwhen revealed.Supporting log snippet (indexer test/save cycle, no errors logged despite the key becoming non-functional afterward):
Note the "Updated indexer" log entry shows no error — the save is accepted at the API level, which supports the theory that the placeholder string
REDACTEDis being submitted and saved as a syntactically valid (but functionally broken) API key value, rather than the update failing outright.Impact
Any time an existing indexer is opened and saved (even for unrelated changes, e.g. adjusting Priority or Categories) without the user manually re-entering the API key, the indexer silently loses its working credentials and searches return zero results with no obvious error shown to the user.