diff --git a/src/Umbraco.Cms.Api.Common/Serialization/UmbracoJsonTypeInfoResolver.cs b/src/Umbraco.Cms.Api.Common/Serialization/UmbracoJsonTypeInfoResolver.cs index 8ce1955a2b..73cd5113d6 100644 --- a/src/Umbraco.Cms.Api.Common/Serialization/UmbracoJsonTypeInfoResolver.cs +++ b/src/Umbraco.Cms.Api.Common/Serialization/UmbracoJsonTypeInfoResolver.cs @@ -22,7 +22,7 @@ public sealed class UmbracoJsonTypeInfoResolver : DefaultJsonTypeInfoResolver, I return cachedResult; } - var result = _typeFinder.FindClassesOfType(type).ToHashSet(); + var result = _typeFinder.FindClassesOfType(type).OrderBy(x => x.Name).ToHashSet(); _subTypesCache.TryAdd(type, result); return result; } diff --git a/src/Umbraco.Cms.Api.Management/Configuration/ConfigureUmbracoManagementApiSwaggerGenOptions.cs b/src/Umbraco.Cms.Api.Management/Configuration/ConfigureUmbracoManagementApiSwaggerGenOptions.cs index 54505297b2..cbf954e41d 100644 --- a/src/Umbraco.Cms.Api.Management/Configuration/ConfigureUmbracoManagementApiSwaggerGenOptions.cs +++ b/src/Umbraco.Cms.Api.Management/Configuration/ConfigureUmbracoManagementApiSwaggerGenOptions.cs @@ -20,6 +20,7 @@ public class ConfigureUmbracoManagementApiSwaggerGenOptions : IConfigureOptions< public void Configure(SwaggerGenOptions swaggerGenOptions) { + swaggerGenOptions.SwaggerDoc( ManagementApiConfiguration.ApiName, new OpenApiInfo @@ -36,7 +37,7 @@ public class ConfigureUmbracoManagementApiSwaggerGenOptions : IConfigureOptions< swaggerGenOptions.AddSecurityDefinition( ManagementApiConfiguration.ApiSecurityName, - new OpenApiSecurityScheme + new OpenApiSecurityScheme { In = ParameterLocation.Header, Name = "Umbraco", @@ -56,4 +57,5 @@ public class ConfigureUmbracoManagementApiSwaggerGenOptions : IConfigureOptions< // Sets Security requirement on backoffice apis swaggerGenOptions.OperationFilter(); } + } diff --git a/src/Umbraco.Cms.Api.Management/OpenApi.json b/src/Umbraco.Cms.Api.Management/OpenApi.json index 8073a5a3f8..179dfabeb4 100644 --- a/src/Umbraco.Cms.Api.Management/OpenApi.json +++ b/src/Umbraco.Cms.Api.Management/OpenApi.json @@ -17407,6 +17407,9 @@ { "$ref": "#/components/schemas/ContentTreeItemResponseModel" }, + { + "$ref": "#/components/schemas/DataTypeTreeItemResponseModel" + }, { "$ref": "#/components/schemas/DocumentBlueprintTreeItemResponseModel" }, @@ -17424,9 +17427,6 @@ }, { "$ref": "#/components/schemas/MediaTypeTreeItemResponseModel" - }, - { - "$ref": "#/components/schemas/DataTypeTreeItemResponseModel" } ] } diff --git a/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs b/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs index 1b5a2992b3..a6c3ba6155 100644 --- a/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs +++ b/tests/Umbraco.Tests.Integration/NewBackoffice/OpenAPIContractTest.cs @@ -46,7 +46,6 @@ internal sealed class OpenAPIContractTest : UmbracoTestServerTestBase public async Task Validate_OpenApi_Contract_is_implemented() { string[] keysToIgnore = { "servers", "x-generator" }; - var officePath = GlobalSettings.GetBackOfficePath(HostingEnvironment); var urlToContract = $"{officePath}/management/api/openapi.json";