diff --git a/API/Controller/Public/GetStats.cs b/API/Controller/Public/GetStats.cs
index 5435442f..6b6f0ad7 100644
--- a/API/Controller/Public/GetStats.cs
+++ b/API/Controller/Public/GetStats.cs
@@ -3,6 +3,7 @@
using OpenShock.Common.Models;
using OpenShock.Common.Redis;
using StackExchange.Redis;
+using System.Net.Mime;
namespace OpenShock.API.Controller.Public;
@@ -12,8 +13,9 @@ public sealed partial class PublicController
/// Gets online devices statistics
///
/// The statistics were successfully retrieved.
- [HttpGet("stats")]
[Tags("Meta")]
+ [HttpGet("stats")]
+ [ResponseCache(Duration = 60, Location = ResponseCacheLocation.Any)]
public async Task> GetOnlineDevicesStatistics([FromServices] IConnectionMultiplexer redisConnectionMultiplexer)
{
var ft = redisConnectionMultiplexer.GetDatabase().FT();
diff --git a/API/Controller/Version/_ApiController.cs b/API/Controller/Version/_ApiController.cs
index afd14501..e4564749 100644
--- a/API/Controller/Version/_ApiController.cs
+++ b/API/Controller/Version/_ApiController.cs
@@ -4,6 +4,7 @@
using OpenShock.Common.Models;
using OpenShock.Common.Options;
using OpenShock.Common.Utils;
+using System.Net.Mime;
using System.Reflection;
namespace OpenShock.API.Controller.Version;
@@ -25,6 +26,7 @@ public sealed partial class VersionController : OpenShockControllerBase
///
/// The version was successfully retrieved.
[HttpGet]
+ [ResponseCache(Duration = 60, Location = ResponseCacheLocation.Any)]
public LegacyDataResponse GetBackendVersion(
[FromServices] IOptions frontendOptions,
[FromServices] IOptions turnstileOptions
diff --git a/Common/OpenShockMiddlewareHelper.cs b/Common/OpenShockMiddlewareHelper.cs
index d5364352..19659e16 100644
--- a/Common/OpenShockMiddlewareHelper.cs
+++ b/Common/OpenShockMiddlewareHelper.cs
@@ -59,6 +59,7 @@ public static async Task UseCommonOpenShockMiddleware(this
KeepAliveInterval = TimeSpan.FromMinutes(1)
});
app.UseRouting();
+ app.UseResponseCaching();
app.UseAuthentication();
app.UseAuthorization();
diff --git a/Common/OpenShockServiceHelper.cs b/Common/OpenShockServiceHelper.cs
index 52b8136c..ba54e6d1 100644
--- a/Common/OpenShockServiceHelper.cs
+++ b/Common/OpenShockServiceHelper.cs
@@ -159,6 +159,7 @@ public static IServiceCollection AddOpenShockServices(this IServiceCollection se
// generic ASP.NET stuff
services.AddMemoryCache();
+ services.AddResponseCaching();
services.AddHttpContextAccessor();
services.AddWebEncoders();
services.AddProblemDetails();