diff --git a/src/Radarr.Api.V3/ProviderControllerBase.cs b/src/Radarr.Api.V3/ProviderControllerBase.cs index 6df4f30d4..78861c0a0 100644 --- a/src/Radarr.Api.V3/ProviderControllerBase.cs +++ b/src/Radarr.Api.V3/ProviderControllerBase.cs @@ -90,7 +90,9 @@ public ActionResult UpdateProvider([FromBody] TProviderResour var providerDefinition = GetDefinition(providerResource, existingDefinition, true, !forceSave, false); // Comparing via JSON string to eliminate the need for every provider implementation to implement equality checks. - var hasDefinitionChanged = STJson.ToJson(existingDefinition) != STJson.ToJson(providerDefinition); + // Compare settings separately because they are not serialized with the definition. + var hasDefinitionChanged = STJson.ToJson(existingDefinition) != STJson.ToJson(providerDefinition) || + STJson.ToJson(existingDefinition.Settings) != STJson.ToJson(providerDefinition.Settings); // Only test existing definitions if it is enabled and forceSave isn't set or the definition has changed. if (providerDefinition.Enable && (!forceSave || hasDefinitionChanged))