diff --git a/BTCPayServer/Plugins/PluginBuilderClient.cs b/BTCPayServer/Plugins/PluginBuilderClient.cs index 43577f293..7f3d5c814 100644 --- a/BTCPayServer/Plugins/PluginBuilderClient.cs +++ b/BTCPayServer/Plugins/PluginBuilderClient.cs @@ -55,10 +55,13 @@ namespace BTCPayServer.Plugins { this.httpClient = httpClient; } - static JsonSerializerSettings serializerSettings = new JsonSerializerSettings() { ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver() }; + static JsonSerializerSettings serializerSettings = new() { ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver() }; public async Task GetPublishedVersions(string btcpayVersion, bool includePreRelease) { - var result = await httpClient.GetStringAsync($"api/v1/plugins?btcpayVersion={btcpayVersion}&includePreRelease={includePreRelease}"); + var queryString = $"?includePreRelease={includePreRelease}"; + if(btcpayVersion is not null) + queryString += $"&btcpayVersion={btcpayVersion}&"; + var result = await httpClient.GetStringAsync($"api/v1/plugins{queryString}"); return JsonConvert.DeserializeObject(result, serializerSettings) ?? throw new InvalidOperationException(); } } diff --git a/BTCPayServer/Plugins/PluginService.cs b/BTCPayServer/Plugins/PluginService.cs index 7811763e3..4b0ff6ef6 100644 --- a/BTCPayServer/Plugins/PluginService.cs +++ b/BTCPayServer/Plugins/PluginService.cs @@ -50,7 +50,7 @@ namespace BTCPayServer.Plugins public async Task GetRemotePlugins() { - var versions = await _pluginBuilderClient.GetPublishedVersions(Env.Version, _policiesSettings.PluginPreReleases); + var versions = await _pluginBuilderClient.GetPublishedVersions(null, _policiesSettings.PluginPreReleases); return versions.Select(v => { var p = v.ManifestInfo.ToObject();