From 73de6e164fe57fd8c9d3f1fa3e817fd36f24ab27 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 25 Apr 2024 09:45:36 +0200 Subject: [PATCH] Configured the swagger UI to persist the authentication token (still only valid for 5 minutes, as it cannot use refreshtoken) and added filtering. (#16146) --- .../OpenApi/SwaggerRouteTemplatePipelineFilter.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Umbraco.Cms.Api.Common/OpenApi/SwaggerRouteTemplatePipelineFilter.cs b/src/Umbraco.Cms.Api.Common/OpenApi/SwaggerRouteTemplatePipelineFilter.cs index 550dc214cd..9f05f57d5a 100644 --- a/src/Umbraco.Cms.Api.Common/OpenApi/SwaggerRouteTemplatePipelineFilter.cs +++ b/src/Umbraco.Cms.Api.Common/OpenApi/SwaggerRouteTemplatePipelineFilter.cs @@ -62,6 +62,10 @@ public class SwaggerRouteTemplatePipelineFilter : UmbracoPipelineFilter swaggerUiOptions.SwaggerEndpoint($"{name}/swagger.json", $"{apiInfo.Title}"); } + // Add custom configuration from https://swagger.io/docs/open-source-tools/swagger-ui/usage/configuration/ + swaggerUiOptions.ConfigObject.PersistAuthorization = true; // persists authorization data so it would not be lost on browser close/refresh + swaggerUiOptions.ConfigObject.Filter = string.Empty; // Enable the filter with an empty string as default filter. + swaggerUiOptions.OAuthClientId(Constants.OAuthClientIds.Swagger); swaggerUiOptions.OAuthUsePkce(); }