Skip to content

Prowlarr Sync

Prowlarr can manage indexers centrally and sync them to downstream Servarr apps (Sonarr, Radarr). This is the recommended approach for multi-service setups.

  1. You configure indexers in Prowlarr only
  2. Prowlarr’s application sync pushes indexers to Sonarr and Radarr
  3. Sonarr/Radarr sidecars set prowlarrSync: true to skip indexer management

This prevents conflicts between PrepArr’s sidecar reconciliation and Prowlarr’s sync.

Configure indexers and application sync targets in prowlarr-config.json:

{
"indexers": [
{
"name": "NZBgeek",
"implementation": "Newznab",
"implementationName": "Newznab",
"configContract": "NewznabSettings",
"fields": [
{ "name": "baseUrl", "value": "https://api.nzbgeek.info" },
{ "name": "apiKey", "value": "your-nzbgeek-api-key" },
{ "name": "categories", "value": [5000, 5040] }
],
"enable": true,
"appProfileId": 1
}
],
"applications": [
{
"name": "Sonarr",
"implementation": "Sonarr",
"implementationName": "Sonarr",
"configContract": "SonarrSettings",
"fields": [
{ "name": "prowlarrUrl", "value": "http://prowlarr:9696" },
{ "name": "baseUrl", "value": "http://sonarr:8989" },
{ "name": "apiKey", "value": "sonarr-api-key" }
],
"syncLevel": "fullSync",
"appProfileId": 1
}
]
}

Set prowlarrSync: true and omit the indexers array:

{
"prowlarrSync": true,
"rootFolders": [...],
"qualityProfiles": [...],
"downloadClients": [...]
}
ValueBehavior
addOnlyProwlarr adds new indexers but doesn’t remove or update existing ones
fullSyncProwlarr fully manages indexers — adds, updates, and removes as needed

fullSync is recommended for a fully automated setup.

Prowlarr needs the API key of each target application to sync indexers. These API keys are either:

  • Set explicitly in your config with the apiKey field
  • Auto-generated by PrepArr during init and available in config.xml

If using auto-generated keys, you’ll need to retrieve them after the init container runs and update your Prowlarr config accordingly.

  1. Check Prowlarr application config has the correct baseUrl and apiKey
  2. Verify Prowlarr can reach the target app:
    Terminal window
    curl -H "X-Api-Key: prowlarr-key" http://prowlarr:9696/api/v1/applications
  3. Trigger a manual sync:
    Terminal window
    curl -X POST -H "X-Api-Key: prowlarr-key" http://prowlarr:9696/api/v1/applications/sync

If the Sonarr/Radarr sidecar removes Prowlarr-synced indexers, check that prowlarrSync: true is set in the config. Without this flag, the sidecar treats the indexer list as authoritative and removes anything not in the config.