New backoffice: Change management API base path (#13232)

* Change management api base path to  /umbraco/management/api/

* Update OpenApi schema

* Fixing some more paths

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
This commit is contained in:
Mole
2022-10-20 09:50:54 +02:00
committed by GitHub
parent df19d4fc6d
commit b3f11b9c16
16 changed files with 100 additions and 100 deletions

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Analytics;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/analytics")]
[VersionedApiBackOfficeRoute("analytics")]
[OpenApiTag("Analytics")]
[ApiVersion("1.0")]
public abstract class AnalyticsControllerBase : ManagementApiControllerBase

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Culture;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/culture")]
[VersionedApiBackOfficeRoute("culture")]
[OpenApiTag("Culture")]
[ApiVersion("1.0")]
public abstract class CultureControllerBase : ManagementApiControllerBase

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Dictionary;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/dictionary")]
[VersionedApiBackOfficeRoute("dictionary")]
[OpenApiTag("Dictionary")]
[ApiVersion("1.0")]
// TODO: Add authentication

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Help;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/help")]
[VersionedApiBackOfficeRoute("help")]
[OpenApiTag("Help")]
[ApiVersion("1.0")]
public abstract class HelpControllerBase : ManagementApiControllerBase

View File

@@ -21,7 +21,7 @@ public class ValidateDatabaseInstallController : InstallControllerBase
_mapper = mapper;
}
[HttpPost("validateDatabase")]
[HttpPost("validate-database")]
[MapToApiVersion("1.0")]
[ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)]
[ProducesResponseType(StatusCodes.Status200OK)]

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Language;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/language")]
[VersionedApiBackOfficeRoute("language")]
[OpenApiTag("Language")]
[ApiVersion("1.0")]
public abstract class LanguageControllerBase : ManagementApiControllerBase

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.ModelsBuilderDashboard;
[ApiController]
[VersionedApiBackOfficeRoute("modelsBuilder")]
[VersionedApiBackOfficeRoute("models-builder")]
[OpenApiTag("ModelsBuilder")]
[ApiVersion("1.0")]

View File

@@ -6,7 +6,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.Profiling;
[ApiVersion("1.0")]
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/profiling")]
[VersionedApiBackOfficeRoute("profiling")]
[OpenApiTag("Profiling")]
public class ProfilingControllerBase : ManagementApiControllerBase
{

View File

@@ -6,7 +6,7 @@ namespace Umbraco.Cms.ManagementApi.Controllers.PublishedCache;
[ApiVersion("1.0")]
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/published-cache")]
[VersionedApiBackOfficeRoute("published-cache")]
[OpenApiTag("PublishedCache")]
public class PublishedCacheControllerBase : ManagementApiControllerBase
{

View File

@@ -22,7 +22,7 @@ public class ByChildRelationController : RelationControllerBase
_relationViewModelFactory = relationViewModelFactory;
}
[HttpGet("childRelations/{childId:int}")]
[HttpGet("child-relations/{childId:int}")]
[MapToApiVersion("1.0")]
[ProducesResponseType(typeof(PagedViewModel<RelationViewModel>), StatusCodes.Status200OK)]
public async Task<PagedViewModel<RelationViewModel>> ByChild(int childId, int skip, int take, string? relationTypeAlias = "")

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.Relation;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/relation")]
[VersionedApiBackOfficeRoute("relation")]
[OpenApiTag("Relation")]
[ApiVersion("1.0")]
// TODO: Implement Authentication

View File

@@ -5,7 +5,7 @@ using Umbraco.New.Cms.Web.Common.Routing;
namespace Umbraco.Cms.ManagementApi.Controllers.TrackedReferences;
[ApiController]
[BackOfficeRoute("api/v{version:apiVersion}/trackedReferences")]
[VersionedApiBackOfficeRoute("tracked-references")]
[OpenApiTag("TrackedReferences")]
[ApiVersion("1.0")]
public abstract class TrackedReferencesControllerBase : ManagementApiControllerBase

View File

@@ -144,7 +144,7 @@ public class ManagementApiComposer : IComposer
endpoints.MapControllers();
// Serve contract
endpoints.MapGet($"{officePath}/api/openapi.json",async context =>
endpoints.MapGet($"{officePath}/management/api/openapi.json",async context =>
{
await context.Response.SendFileAsync(new EmbeddedFileProvider(this.GetType().Assembly).GetFileInfo("OpenApi.json"));
});

View File

@@ -12,7 +12,7 @@
}
],
"paths": {
"/umbraco/api/v1/upgrade/authorize": {
"/umbraco/management/api/v1/upgrade/authorize": {
"post": {
"tags": [
"Upgrade"
@@ -45,7 +45,7 @@
}
}
},
"/umbraco/api/v1/upgrade/settings": {
"/umbraco/management/api/v1/upgrade/settings": {
"get": {
"tags": [
"Upgrade"
@@ -75,7 +75,7 @@
}
}
},
"/umbraco/api/v1/trackedReferences/descendants/{parentId}": {
"/umbraco/management/api/v1/tracked-references/descendants/{parentId}": {
"get": {
"tags": [
"TrackedReferences"
@@ -136,7 +136,7 @@
}
}
},
"/umbraco/api/v1/trackedReferences/{id}": {
"/umbraco/management/api/v1/tracked-references/{id}": {
"get": {
"tags": [
"TrackedReferences"
@@ -197,7 +197,7 @@
}
}
},
"/umbraco/api/v1/trackedReferences/multiple": {
"/umbraco/management/api/v1/tracked-references/multiple": {
"get": {
"tags": [
"TrackedReferences"
@@ -263,7 +263,7 @@
}
}
},
"/umbraco/api/v1/template/tree/children": {
"/umbraco/management/api/v1/template/tree/children": {
"get": {
"tags": [
"Template"
@@ -314,7 +314,7 @@
}
}
},
"/umbraco/api/v1/template/tree/items": {
"/umbraco/management/api/v1/template/tree/items": {
"get": {
"tags": [
"Template"
@@ -355,7 +355,7 @@
}
}
},
"/umbraco/api/v1/template/tree/root": {
"/umbraco/management/api/v1/template/tree/root": {
"get": {
"tags": [
"Template"
@@ -397,7 +397,7 @@
}
}
},
"/umbraco/api/v1/stylesheet/tree/children": {
"/umbraco/management/api/v1/stylesheet/tree/children": {
"get": {
"tags": [
"Stylesheet"
@@ -448,7 +448,7 @@
}
}
},
"/umbraco/api/v1/stylesheet/tree/items": {
"/umbraco/management/api/v1/stylesheet/tree/items": {
"get": {
"tags": [
"Stylesheet"
@@ -488,7 +488,7 @@
}
}
},
"/umbraco/api/v1/stylesheet/tree/root": {
"/umbraco/management/api/v1/stylesheet/tree/root": {
"get": {
"tags": [
"Stylesheet"
@@ -530,7 +530,7 @@
}
}
},
"/umbraco/api/v1/static-file/tree/children": {
"/umbraco/management/api/v1/static-file/tree/children": {
"get": {
"tags": [
"StaticFile"
@@ -581,7 +581,7 @@
}
}
},
"/umbraco/api/v1/static-file/tree/items": {
"/umbraco/management/api/v1/static-file/tree/items": {
"get": {
"tags": [
"StaticFile"
@@ -621,7 +621,7 @@
}
}
},
"/umbraco/api/v1/static-file/tree/root": {
"/umbraco/management/api/v1/static-file/tree/root": {
"get": {
"tags": [
"StaticFile"
@@ -663,7 +663,7 @@
}
}
},
"/umbraco/api/v1/server/status": {
"/umbraco/management/api/v1/server/status": {
"get": {
"tags": [
"Server"
@@ -693,7 +693,7 @@
}
}
},
"/umbraco/api/v1/server/version": {
"/umbraco/management/api/v1/server/version": {
"get": {
"tags": [
"Server"
@@ -723,7 +723,7 @@
}
}
},
"/umbraco/api/v1/search/index/{indexName}": {
"/umbraco/management/api/v1/search/index/{indexName}": {
"get": {
"tags": [
"Search"
@@ -767,7 +767,7 @@
}
}
},
"/umbraco/api/v1/search/index": {
"/umbraco/management/api/v1/search/index": {
"get": {
"tags": [
"Search"
@@ -808,7 +808,7 @@
}
}
},
"/umbraco/api/v1/search/index/{indexName}/rebuild": {
"/umbraco/management/api/v1/search/index/{indexName}/rebuild": {
"post": {
"tags": [
"Search"
@@ -852,7 +852,7 @@
}
}
},
"/umbraco/api/v1/search/searcher": {
"/umbraco/management/api/v1/search/searcher": {
"get": {
"tags": [
"Search"
@@ -893,7 +893,7 @@
}
}
},
"/umbraco/api/v1/search/searcher/{searcherName}/search": {
"/umbraco/management/api/v1/search/searcher/{searcherName}/search": {
"get": {
"tags": [
"Search"
@@ -962,7 +962,7 @@
}
}
},
"/umbraco/api/v1/script/tree/children": {
"/umbraco/management/api/v1/script/tree/children": {
"get": {
"tags": [
"Script"
@@ -1013,7 +1013,7 @@
}
}
},
"/umbraco/api/v1/script/tree/items": {
"/umbraco/management/api/v1/script/tree/items": {
"get": {
"tags": [
"Script"
@@ -1053,7 +1053,7 @@
}
}
},
"/umbraco/api/v1/script/tree/root": {
"/umbraco/management/api/v1/script/tree/root": {
"get": {
"tags": [
"Script"
@@ -1095,7 +1095,7 @@
}
}
},
"/umbraco/api/v1/relation/childRelations/{childId}": {
"/umbraco/management/api/v1/relation/child-relations/{childId}": {
"get": {
"tags": [
"Relation"
@@ -1155,7 +1155,7 @@
}
}
},
"/umbraco/api/v1/relation/{id}": {
"/umbraco/management/api/v1/relation/{id}": {
"get": {
"tags": [
"Relation"
@@ -1198,7 +1198,7 @@
}
}
},
"/umbraco/api/v1/relation-type/tree/items": {
"/umbraco/management/api/v1/relation-type/tree/items": {
"get": {
"tags": [
"RelationType"
@@ -1239,7 +1239,7 @@
}
}
},
"/umbraco/api/v1/relation-type/tree/root": {
"/umbraco/management/api/v1/relation-type/tree/root": {
"get": {
"tags": [
"RelationType"
@@ -1281,7 +1281,7 @@
}
}
},
"/umbraco/api/v1/published-cache/collect": {
"/umbraco/management/api/v1/published-cache/collect": {
"post": {
"tags": [
"PublishedCache"
@@ -1294,7 +1294,7 @@
}
}
},
"/umbraco/api/v1/published-cache/rebuild": {
"/umbraco/management/api/v1/published-cache/rebuild": {
"post": {
"tags": [
"PublishedCache"
@@ -1307,7 +1307,7 @@
}
}
},
"/umbraco/api/v1/published-cache/reload": {
"/umbraco/management/api/v1/published-cache/reload": {
"post": {
"tags": [
"PublishedCache"
@@ -1320,7 +1320,7 @@
}
}
},
"/umbraco/api/v1/published-cache/status": {
"/umbraco/management/api/v1/published-cache/status": {
"get": {
"tags": [
"PublishedCache"
@@ -1340,7 +1340,7 @@
}
}
},
"/umbraco/api/v1/profiling/status": {
"/umbraco/management/api/v1/profiling/status": {
"get": {
"tags": [
"Profiling"
@@ -1360,7 +1360,7 @@
}
}
},
"/umbraco/api/v1/partial-view/tree/children": {
"/umbraco/management/api/v1/partial-view/tree/children": {
"get": {
"tags": [
"PartialView"
@@ -1411,7 +1411,7 @@
}
}
},
"/umbraco/api/v1/partial-view/tree/items": {
"/umbraco/management/api/v1/partial-view/tree/items": {
"get": {
"tags": [
"PartialView"
@@ -1451,7 +1451,7 @@
}
}
},
"/umbraco/api/v1/partial-view/tree/root": {
"/umbraco/management/api/v1/partial-view/tree/root": {
"get": {
"tags": [
"PartialView"
@@ -1493,7 +1493,7 @@
}
}
},
"/umbraco/api/v1/modelsBuilder/build": {
"/umbraco/management/api/v1/models-builder/build": {
"post": {
"tags": [
"ModelsBuilder"
@@ -1524,7 +1524,7 @@
}
}
},
"/umbraco/api/v1/modelsBuilder": {
"/umbraco/management/api/v1/models-builder": {
"get": {
"tags": [
"ModelsBuilder"
@@ -1545,7 +1545,7 @@
}
}
},
"/umbraco/api/v1/modelsBuilder/status": {
"/umbraco/management/api/v1/models-builder/status": {
"get": {
"tags": [
"ModelsBuilder"
@@ -1565,7 +1565,7 @@
}
}
},
"/umbraco/api/v1/member-type/tree/items": {
"/umbraco/management/api/v1/member-type/tree/items": {
"get": {
"tags": [
"MemberType"
@@ -1606,7 +1606,7 @@
}
}
},
"/umbraco/api/v1/member-type/tree/root": {
"/umbraco/management/api/v1/member-type/tree/root": {
"get": {
"tags": [
"MemberType"
@@ -1648,7 +1648,7 @@
}
}
},
"/umbraco/api/v1/member-group/tree/items": {
"/umbraco/management/api/v1/member-group/tree/items": {
"get": {
"tags": [
"MemberGroup"
@@ -1689,7 +1689,7 @@
}
}
},
"/umbraco/api/v1/member-group/tree/root": {
"/umbraco/management/api/v1/member-group/tree/root": {
"get": {
"tags": [
"MemberGroup"
@@ -1731,7 +1731,7 @@
}
}
},
"/umbraco/api/v1/media/tree/children": {
"/umbraco/management/api/v1/media/tree/children": {
"get": {
"tags": [
"Media"
@@ -1792,7 +1792,7 @@
}
}
},
"/umbraco/api/v1/media/tree/items": {
"/umbraco/management/api/v1/media/tree/items": {
"get": {
"tags": [
"Media"
@@ -1843,7 +1843,7 @@
}
}
},
"/umbraco/api/v1/media/tree/root": {
"/umbraco/management/api/v1/media/tree/root": {
"get": {
"tags": [
"Media"
@@ -1895,7 +1895,7 @@
}
}
},
"/umbraco/api/v1/media/recycle-bin/children": {
"/umbraco/management/api/v1/media/recycle-bin/children": {
"get": {
"tags": [
"Media"
@@ -1956,7 +1956,7 @@
}
}
},
"/umbraco/api/v1/media/recycle-bin/root": {
"/umbraco/management/api/v1/media/recycle-bin/root": {
"get": {
"tags": [
"Media"
@@ -2008,7 +2008,7 @@
}
}
},
"/umbraco/api/v1/media-type/tree/children": {
"/umbraco/management/api/v1/media-type/tree/children": {
"get": {
"tags": [
"MediaType"
@@ -2068,7 +2068,7 @@
}
}
},
"/umbraco/api/v1/media-type/tree/items": {
"/umbraco/management/api/v1/media-type/tree/items": {
"get": {
"tags": [
"MediaType"
@@ -2109,7 +2109,7 @@
}
}
},
"/umbraco/api/v1/media-type/tree/root": {
"/umbraco/management/api/v1/media-type/tree/root": {
"get": {
"tags": [
"MediaType"
@@ -2160,7 +2160,7 @@
}
}
},
"/umbraco/api/v1/language": {
"/umbraco/management/api/v1/language": {
"get": {
"tags": [
"Language"
@@ -2201,7 +2201,7 @@
}
}
},
"/umbraco/api/v1/language/{id}": {
"/umbraco/management/api/v1/language/{id}": {
"get": {
"tags": [
"Language"
@@ -2288,7 +2288,7 @@
}
}
},
"/umbraco/api/v1/language/create": {
"/umbraco/management/api/v1/language/create": {
"post": {
"tags": [
"Language"
@@ -2324,7 +2324,7 @@
}
}
},
"/umbraco/api/v1/language/update": {
"/umbraco/management/api/v1/language/update": {
"put": {
"tags": [
"Language"
@@ -2371,7 +2371,7 @@
}
}
},
"/umbraco/api/v1/install/settings": {
"/umbraco/management/api/v1/install/settings": {
"get": {
"tags": [
"Install"
@@ -2411,7 +2411,7 @@
}
}
},
"/umbraco/api/v1/install/setup": {
"/umbraco/management/api/v1/install/setup": {
"post": {
"tags": [
"Install"
@@ -2456,7 +2456,7 @@
}
}
},
"/umbraco/api/v1/install/validateDatabase": {
"/umbraco/management/api/v1/install/validate-database": {
"post": {
"tags": [
"Install"
@@ -2491,7 +2491,7 @@
}
}
},
"/umbraco/api/v1/help": {
"/umbraco/management/api/v1/help": {
"get": {
"tags": [
"Help"
@@ -2569,7 +2569,7 @@
}
}
},
"/umbraco/api/v1/document/tree/children": {
"/umbraco/management/api/v1/document/tree/children": {
"get": {
"tags": [
"Document"
@@ -2639,7 +2639,7 @@
}
}
},
"/umbraco/api/v1/document/tree/items": {
"/umbraco/management/api/v1/document/tree/items": {
"get": {
"tags": [
"Document"
@@ -2699,7 +2699,7 @@
}
}
},
"/umbraco/api/v1/document/tree/root": {
"/umbraco/management/api/v1/document/tree/root": {
"get": {
"tags": [
"Document"
@@ -2760,7 +2760,7 @@
}
}
},
"/umbraco/api/v1/document/recycle-bin/children": {
"/umbraco/management/api/v1/document/recycle-bin/children": {
"get": {
"tags": [
"Document"
@@ -2821,7 +2821,7 @@
}
}
},
"/umbraco/api/v1/document/recycle-bin/root": {
"/umbraco/management/api/v1/document/recycle-bin/root": {
"get": {
"tags": [
"Document"
@@ -2873,7 +2873,7 @@
}
}
},
"/umbraco/api/v1/document-type/tree/children": {
"/umbraco/management/api/v1/document-type/tree/children": {
"get": {
"tags": [
"DocumentType"
@@ -2933,7 +2933,7 @@
}
}
},
"/umbraco/api/v1/document-type/tree/items": {
"/umbraco/management/api/v1/document-type/tree/items": {
"get": {
"tags": [
"DocumentType"
@@ -2974,7 +2974,7 @@
}
}
},
"/umbraco/api/v1/document-type/tree/root": {
"/umbraco/management/api/v1/document-type/tree/root": {
"get": {
"tags": [
"DocumentType"
@@ -3025,7 +3025,7 @@
}
}
},
"/umbraco/api/v1/document-blueprint/tree/items": {
"/umbraco/management/api/v1/document-blueprint/tree/items": {
"get": {
"tags": [
"DocumentBlueprint"
@@ -3066,7 +3066,7 @@
}
}
},
"/umbraco/api/v1/document-blueprint/tree/root": {
"/umbraco/management/api/v1/document-blueprint/tree/root": {
"get": {
"tags": [
"DocumentBlueprint"
@@ -3108,7 +3108,7 @@
}
}
},
"/umbraco/api/v1/dictionary": {
"/umbraco/management/api/v1/dictionary": {
"get": {
"tags": [
"Dictionary"
@@ -3149,7 +3149,7 @@
}
}
},
"/umbraco/api/v1/dictionary/{key}": {
"/umbraco/management/api/v1/dictionary/{key}": {
"get": {
"tags": [
"Dictionary"
@@ -3230,7 +3230,7 @@
}
}
},
"/umbraco/api/v1/dictionary/create": {
"/umbraco/management/api/v1/dictionary/create": {
"post": {
"tags": [
"Dictionary"
@@ -3275,7 +3275,7 @@
}
}
},
"/umbraco/api/v1/dictionary/export/{key}": {
"/umbraco/management/api/v1/dictionary/export/{key}": {
"get": {
"tags": [
"Dictionary"
@@ -3328,7 +3328,7 @@
}
}
},
"/umbraco/api/v1/dictionary/import": {
"/umbraco/management/api/v1/dictionary/import": {
"post": {
"tags": [
"Dictionary"
@@ -3381,7 +3381,7 @@
}
}
},
"/umbraco/api/v1/dictionary/{id}": {
"/umbraco/management/api/v1/dictionary/{id}": {
"patch": {
"tags": [
"Dictionary"
@@ -3440,7 +3440,7 @@
}
}
},
"/umbraco/api/v1/dictionary/upload": {
"/umbraco/management/api/v1/dictionary/upload": {
"post": {
"tags": [
"Dictionary"
@@ -3486,7 +3486,7 @@
}
}
},
"/umbraco/api/v1/dictionary-item/tree/children": {
"/umbraco/management/api/v1/dictionary-item/tree/children": {
"get": {
"tags": [
"DictionaryItem"
@@ -3537,7 +3537,7 @@
}
}
},
"/umbraco/api/v1/dictionary-item/tree/items": {
"/umbraco/management/api/v1/dictionary-item/tree/items": {
"get": {
"tags": [
"DictionaryItem"
@@ -3578,7 +3578,7 @@
}
}
},
"/umbraco/api/v1/dictionary-item/tree/root": {
"/umbraco/management/api/v1/dictionary-item/tree/root": {
"get": {
"tags": [
"DictionaryItem"
@@ -3620,7 +3620,7 @@
}
}
},
"/umbraco/api/v1/data-type/tree/children": {
"/umbraco/management/api/v1/data-type/tree/children": {
"get": {
"tags": [
"DataType"
@@ -3680,7 +3680,7 @@
}
}
},
"/umbraco/api/v1/data-type/tree/items": {
"/umbraco/management/api/v1/data-type/tree/items": {
"get": {
"tags": [
"DataType"
@@ -3721,7 +3721,7 @@
}
}
},
"/umbraco/api/v1/data-type/tree/root": {
"/umbraco/management/api/v1/data-type/tree/root": {
"get": {
"tags": [
"DataType"
@@ -3772,7 +3772,7 @@
}
}
},
"/umbraco/api/v1/culture": {
"/umbraco/management/api/v1/culture": {
"get": {
"tags": [
"Culture"
@@ -3813,7 +3813,7 @@
}
}
},
"/umbraco/api/v1/analytics/all": {
"/umbraco/management/api/v1/analytics/all": {
"get": {
"tags": [
"Analytics"
@@ -3853,7 +3853,7 @@
}
}
},
"/umbraco/api/v1/analytics": {
"/umbraco/management/api/v1/analytics": {
"get": {
"tags": [
"Analytics"

View File

@@ -3,7 +3,7 @@
public class VersionedApiBackOfficeRouteAttribute : BackOfficeRouteAttribute
{
public VersionedApiBackOfficeRouteAttribute(string template)
: base($"api/v{{version:apiVersion}}/{template.TrimStart('/')}")
: base($"management/api/v{{version:apiVersion}}/{template.TrimStart('/')}")
{
}
}

View File

@@ -38,7 +38,7 @@ internal sealed class OpenAPIContractTest : UmbracoTestServerTestBase
var officePath = GlobalSettings.GetBackOfficePath(HostingEnvironment);
var urlToContract = $"{officePath}/api/openapi.json";
var urlToContract = $"{officePath}/management/api/openapi.json";
var swaggerPath = $"{officePath}/swagger/All/swagger.json";
var apiContract = JObject.Parse(await Client.GetStringAsync(urlToContract));