New backoffice: Cleanup management API routes (#13296)
* Rename ModelsBuilderDashboard folder to ModelsBuilder * Fix modelsbuilder paths and related naming * Rename analytics route to telemetry * Fix controller bases - routes and tags * Fix items route * Fix more controllerbase routes * Fix route * Fix OpenApi file * Merging DictionaryItem and Dictionary * Fix TrackedReferences naming * Update OpenApi file * Rename Analytics* related types to Telemetry* * New Backoffice: Return AnalyticsLevelViewModel from Telemetry/ (#13298) * Return TelemetryLevelViewModel instead of TelemetryLevel * Fix schema * Change telemetry/current to telemetry/level (cherry picked from commit f2b8494c669cbbf04b623753abbf1be211973aa9) * Add contants for tree and recycle-bin subpaths (cherry picked from commit 4449f56bc00832ea6d357a3854b454791c80e0e2) Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
This commit is contained in:
committed by
GitHub
parent
86d9e51039
commit
6ff4d27d47
@@ -0,0 +1,35 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Umbraco.Cms.Core.Services;
|
||||
using Umbraco.Cms.ManagementApi.ViewModels.Telemetry;
|
||||
|
||||
namespace Umbraco.Cms.ManagementApi.Controllers.Telemetry;
|
||||
|
||||
public class SetTelemetryController : TelemetryControllerBase
|
||||
{
|
||||
private readonly IMetricsConsentService _metricsConsentService;
|
||||
|
||||
public SetTelemetryController(IMetricsConsentService metricsConsentService) => _metricsConsentService = metricsConsentService;
|
||||
|
||||
[HttpPost("level")]
|
||||
[MapToApiVersion("1.0")]
|
||||
[ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)]
|
||||
[ProducesResponseType(StatusCodes.Status200OK)]
|
||||
public async Task<IActionResult> SetConsentLevel(TelemetryLevelViewModel telemetryLevelViewModel)
|
||||
{
|
||||
if (!Enum.IsDefined(telemetryLevelViewModel.TelemetryLevel))
|
||||
{
|
||||
var invalidModelProblem = new ProblemDetails
|
||||
{
|
||||
Title = "Invalid TelemetryLevel value",
|
||||
Detail = "The provided value for TelemetryLevel is not valid",
|
||||
Status = StatusCodes.Status400BadRequest,
|
||||
Type = "Error",
|
||||
};
|
||||
return BadRequest(invalidModelProblem);
|
||||
}
|
||||
|
||||
_metricsConsentService.SetConsentLevel(telemetryLevelViewModel.TelemetryLevel);
|
||||
return await Task.FromResult(Ok());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user