From 4a3b23ad3efda818149b85274b72ed57a3655282 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 25 Sep 2025 08:49:53 +0100 Subject: [PATCH 01/51] Update README.md with information about the forum Making a small change to the Readme to signpost the Forum now that it's the place to go for help/questions --- .github/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/README.md b/.github/README.md index 63b908daed55..195d4f9a36c7 100644 --- a/.github/README.md +++ b/.github/README.md @@ -40,7 +40,7 @@ Some important documentation links to get you started: ## Get help -If you need a bit of feedback while building your Umbraco projects, we are [chatty on Discord](https://discord.umbraco.com). Our Discord server serves both a social space but also has channels for questions and answers. Feel free to lurk or join in with your own questions. Or just post your daily Wordle score, up to you! +If you need a bit of feedback while building your Umbraco projects, we are [chatty on Discord](https://discord.umbraco.com). Our Discord server serves as a social space for all Umbracians. If you have any questions or need some help with a problem, head over to our [dedicated forum](https://forum.umbraco.com/) where the Umbraco Community will be happy to help. ## Looking to contribute back to Umbraco? @@ -52,3 +52,4 @@ You came to the right place! Our GitHub repository is available for all kinds of Umbraco is contribution-focused and community-driven. If you want to contribute back to the Umbraco source code, please check out our [guide to contributing](CONTRIBUTING.md). ### Tip: You should not run Umbraco from source code found here. Umbraco is extremely extensible and can do whatever you need. Instead, [install Umbraco as noted above](#looking-to-install-umbraco) and then [extend it any way you want to](https://docs.umbraco.com/umbraco-cms/extending/). + From b371be032a1cd5d2eda41f58c7f1ef41b9624df0 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 20:40:52 +0100 Subject: [PATCH 02/51] [TASK] Initial update of some Management API endpoints --- .../Controllers/Culture/AllCultureController.cs | 2 ++ .../DocumentVersion/AllDocumentVersionController.cs | 3 +++ .../DocumentVersion/ByKeyDocumentVersionController.cs | 2 ++ .../DocumentVersion/RollbackDocumentVersionController.cs | 2 ++ .../UpdatePreventCleanupDocumentVersionController.cs | 2 ++ 5 files changed, 11 insertions(+) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index eb5177996aab..73885dce9b0f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -28,6 +28,8 @@ public AllCultureController(IUmbracoMapper umbracoMapper, ICultureService cultur [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Returns all cultures available for creating languages.")] + [EndpointDescription("Returns the total number of cultures setup and also individual details for each culture. Optionally you can paginate the restuls using skip and take parameters")] public Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { CultureInfo[] all = _cultureService.GetValidCultureInfos(); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs index a09554756e77..2b196a37e2e1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs @@ -31,6 +31,9 @@ public AllDocumentVersionController( [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] + [EndpointSummary("Gets a paged result of all versions for a specific document")] + [EndpointDescription("A documentId is required. Culture, skip and take parameters are optional. " + + "
Returned is data relevant to that document e.g. Document Type, user id, version date, is it the current published / draft version. A useful endpoint when you need to find a document version id for other queries.")] public async Task All( CancellationToken cancellationToken, [Required] Guid documentId, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs index fa44d7a61ce1..cb2b71618c09 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs @@ -29,6 +29,8 @@ public ByKeyDocumentVersionController( [ProducesResponseType(typeof(DocumentVersionResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] + [EndpointSummary("Gets a specific document version by its unique id")] + [EndpointDescription("A document version id is required. Returned is data relevant to that document version e.g. Document Type, User Id, version date, is it the current published / draft version.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { Attempt attempt = diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs index 64f2f09bb3b5..a54752641ffb 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs @@ -36,6 +36,8 @@ public RollbackDocumentVersionController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] + [EndpointSummary("Rolls back a document to a specific version")] + [EndpointDescription("A document version id is required. This will roll back the document to the specified version.")] public async Task Rollback(CancellationToken cancellationToken, Guid id, string? culture) { Attempt getContentAttempt = diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs index 68f4a15b821f..c0bd864129a3 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs @@ -27,6 +27,8 @@ public UpdatePreventCleanupDocumentVersionController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] + [EndpointSummary("Sets or unsets the prevent cleanup flag on a specific document version")] + [EndpointDescription("A document version id and prevent cleanup flag is required. This will set or unset the prevent cleanup flag on the specified document version.")] public async Task Set(CancellationToken cancellationToken, Guid id, bool preventCleanup) { Attempt attempt = From 3ddac22f19e2a58cf7a3da5595de5bd76ad7f11f Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 20:48:09 +0100 Subject: [PATCH 03/51] Update src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../Controllers/Culture/AllCultureController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index 73885dce9b0f..9bff65f3e92b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -29,7 +29,7 @@ public AllCultureController(IUmbracoMapper umbracoMapper, ICultureService cultur [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Returns all cultures available for creating languages.")] - [EndpointDescription("Returns the total number of cultures setup and also individual details for each culture. Optionally you can paginate the restuls using skip and take parameters")] + [EndpointDescription("Returns the total number of cultures setup and also individual details for each culture. Optionally you can paginate the results using skip and take parameters")] public Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { CultureInfo[] all = _cultureService.GetValidCultureInfos(); From d591d3a83380cdc154208ecc313453f4cafc9dae Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 20:48:40 +0100 Subject: [PATCH 04/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../UpdatePreventCleanupDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs index c0bd864129a3..9832fdc09365 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs @@ -28,7 +28,7 @@ public UpdatePreventCleanupDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Sets or unsets the prevent cleanup flag on a specific document version")] - [EndpointDescription("A document version id and prevent cleanup flag is required. This will set or unset the prevent cleanup flag on the specified document version.")] + [EndpointDescription("A document version id and prevent cleanup flag are required. This will set or unset the prevent cleanup flag on the specified document version.")] public async Task Set(CancellationToken cancellationToken, Guid id, bool preventCleanup) { Attempt attempt = From 3df76dd15c4c1e35b85b74b26dc89870ae8a55b9 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 20:49:02 +0100 Subject: [PATCH 05/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../DocumentVersion/ByKeyDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs index cb2b71618c09..afae7e2ddd4b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs @@ -30,7 +30,7 @@ public ByKeyDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Gets a specific document version by its unique id")] - [EndpointDescription("A document version id is required. Returned is data relevant to that document version e.g. Document Type, User Id, version date, is it the current published / draft version.")] + [EndpointDescription("A document version ID is required. Returned is data relevant to that document version, e.g., document type, user ID, version date, and whether it is the current published/draft version.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { Attempt attempt = From 71f6fe013e11220c18af69e94d9ddfd29f5b121e Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 20:49:21 +0100 Subject: [PATCH 06/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../DocumentVersion/AllDocumentVersionController.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs index 2b196a37e2e1..998a6aa54940 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs @@ -32,8 +32,7 @@ public AllDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Gets a paged result of all versions for a specific document")] - [EndpointDescription("A documentId is required. Culture, skip and take parameters are optional. " + - "
Returned is data relevant to that document e.g. Document Type, user id, version date, is it the current published / draft version. A useful endpoint when you need to find a document version id for other queries.")] + [EndpointDescription("A documentId is required. Culture, skip, and take parameters are optional. Returned is data relevant to that document, e.g., document type, user ID, version date, and whether it is the current published or draft version. This is useful when you need to find a document version ID for other queries.")] public async Task All( CancellationToken cancellationToken, [Required] Guid documentId, From d265c0749248c7b00629072454675c088e22b62c Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Sat, 18 Oct 2025 21:09:03 +0100 Subject: [PATCH 07/51] [UPDATE] Small grammer update --- .../Controllers/Culture/AllCultureController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index 9bff65f3e92b..6dcb726b95af 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -29,7 +29,7 @@ public AllCultureController(IUmbracoMapper umbracoMapper, ICultureService cultur [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Returns all cultures available for creating languages.")] - [EndpointDescription("Returns the total number of cultures setup and also individual details for each culture. Optionally you can paginate the results using skip and take parameters")] + [EndpointDescription("Returns the total number of cultures set up and also individual details for each culture. Optionally you can paginate the results using skip and take parameters")] public Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { CultureInfo[] all = _cultureService.GetValidCultureInfos(); From 12c421d3378909313ce5247d56f6ee3ca1452bf4 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:48:21 +0100 Subject: [PATCH 08/51] Update src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs Co-authored-by: Andy Butland --- .../Controllers/Culture/AllCultureController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index 6dcb726b95af..c3b34529b532 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -28,7 +28,7 @@ public AllCultureController(IUmbracoMapper umbracoMapper, ICultureService cultur [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Returns all cultures available for creating languages.")] + [EndpointSummary("Gets a paginated collection of cultures available for creating languages.")] [EndpointDescription("Returns the total number of cultures set up and also individual details for each culture. Optionally you can paginate the results using skip and take parameters")] public Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { From 5391fe44dab5b963762f21b8decc3d3845c5abe9 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:49:08 +0100 Subject: [PATCH 09/51] Update src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs Co-authored-by: Andy Butland --- .../Controllers/Culture/AllCultureController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs index c3b34529b532..be5c32863a4a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Culture/AllCultureController.cs @@ -29,7 +29,7 @@ public AllCultureController(IUmbracoMapper umbracoMapper, ICultureService cultur [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Gets a paginated collection of cultures available for creating languages.")] - [EndpointDescription("Returns the total number of cultures set up and also individual details for each culture. Optionally you can paginate the results using skip and take parameters")] + [EndpointDescription("Gets a paginated collection containing the English and localized names of all available cultures.")] public Task> GetAll(CancellationToken cancellationToken, int skip = 0, int take = 100) { CultureInfo[] all = _cultureService.GetValidCultureInfos(); From 74bdcad4538c35ad9ea1f5108b9a64b00d2042d1 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:49:28 +0100 Subject: [PATCH 10/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs Co-authored-by: Andy Butland --- .../Controllers/DocumentVersion/AllDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs index 998a6aa54940..6f256918fdf5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs @@ -31,7 +31,7 @@ public AllDocumentVersionController( [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - [EndpointSummary("Gets a paged result of all versions for a specific document")] + [EndpointSummary("Gets a paginated collection of versions for a specific document.")] [EndpointDescription("A documentId is required. Culture, skip, and take parameters are optional. Returned is data relevant to that document, e.g., document type, user ID, version date, and whether it is the current published or draft version. This is useful when you need to find a document version ID for other queries.")] public async Task All( CancellationToken cancellationToken, From ae9151c4530646dd448dd62d313963035943f865 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:50:46 +0100 Subject: [PATCH 11/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs Co-authored-by: Andy Butland --- .../Controllers/DocumentVersion/AllDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs index 6f256918fdf5..73efbb71b28b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/AllDocumentVersionController.cs @@ -32,7 +32,7 @@ public AllDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Gets a paginated collection of versions for a specific document.")] - [EndpointDescription("A documentId is required. Culture, skip, and take parameters are optional. Returned is data relevant to that document, e.g., document type, user ID, version date, and whether it is the current published or draft version. This is useful when you need to find a document version ID for other queries.")] + [EndpointDescription("Gets a paginated collection of versions for a specific document and optional culture. Each result describes the version and includes details of the document type, editor, version date, and published status.")] public async Task All( CancellationToken cancellationToken, [Required] Guid documentId, From cef11428d251a09098032ef70763b6589f04a3e0 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:51:24 +0100 Subject: [PATCH 12/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs Co-authored-by: Andy Butland --- .../DocumentVersion/ByKeyDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs index afae7e2ddd4b..fbd5275ead6b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs @@ -29,7 +29,7 @@ public ByKeyDocumentVersionController( [ProducesResponseType(typeof(DocumentVersionResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - [EndpointSummary("Gets a specific document version by its unique id")] + [EndpointSummary("Gets a specific document version.")] [EndpointDescription("A document version ID is required. Returned is data relevant to that document version, e.g., document type, user ID, version date, and whether it is the current published/draft version.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { From 018b2ba6473d045da5a448fe735079cc741c2549 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:51:43 +0100 Subject: [PATCH 13/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs Co-authored-by: Andy Butland --- .../DocumentVersion/ByKeyDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs index fbd5275ead6b..ee17c05a21de 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/ByKeyDocumentVersionController.cs @@ -30,7 +30,7 @@ public ByKeyDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Gets a specific document version.")] - [EndpointDescription("A document version ID is required. Returned is data relevant to that document version, e.g., document type, user ID, version date, and whether it is the current published/draft version.")] + [EndpointDescription("Gets a specific document version by its Id. If found, the result describes the version and includes details of the document type, editor, version date, and published status.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { Attempt attempt = From 86031552abc22fe8af17497ce1b2dbe253a2a698 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:51:54 +0100 Subject: [PATCH 14/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs Co-authored-by: Andy Butland --- .../DocumentVersion/RollbackDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs index a54752641ffb..7693534e5a72 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs @@ -36,7 +36,7 @@ public RollbackDocumentVersionController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - [EndpointSummary("Rolls back a document to a specific version")] + [EndpointSummary("Rolls back a document to a specific version.")] [EndpointDescription("A document version id is required. This will roll back the document to the specified version.")] public async Task Rollback(CancellationToken cancellationToken, Guid id, string? culture) { From aa055d4953dde009e8616d24a6aff1e4086e8554 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:52:14 +0100 Subject: [PATCH 15/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs Co-authored-by: Andy Butland --- .../DocumentVersion/RollbackDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs index 7693534e5a72..a1b678a5f23a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/RollbackDocumentVersionController.cs @@ -37,7 +37,7 @@ public RollbackDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Rolls back a document to a specific version.")] - [EndpointDescription("A document version id is required. This will roll back the document to the specified version.")] + [EndpointDescription("Rolls back a document to the version indicated by the provided Id. This will archive the current version of the document and publish the provided one.")] public async Task Rollback(CancellationToken cancellationToken, Guid id, string? culture) { Attempt getContentAttempt = From 3d655c54a0c21af3bfe1f4cb73e06b04f1070e2c Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:52:28 +0100 Subject: [PATCH 16/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs Co-authored-by: Andy Butland --- .../UpdatePreventCleanupDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs index 9832fdc09365..19626f1e70e6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs @@ -27,7 +27,7 @@ public UpdatePreventCleanupDocumentVersionController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] - [EndpointSummary("Sets or unsets the prevent cleanup flag on a specific document version")] + [EndpointSummary("Sets the prevent clean up status for a document version.")] [EndpointDescription("A document version id and prevent cleanup flag are required. This will set or unset the prevent cleanup flag on the specified document version.")] public async Task Set(CancellationToken cancellationToken, Guid id, bool preventCleanup) { From 9a89705689c72fea1a55b43dcd3ec1bf07e53703 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 08:52:42 +0100 Subject: [PATCH 17/51] Update src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs Co-authored-by: Andy Butland --- .../UpdatePreventCleanupDocumentVersionController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs index 19626f1e70e6..be565b684739 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DocumentVersion/UpdatePreventCleanupDocumentVersionController.cs @@ -28,7 +28,7 @@ public UpdatePreventCleanupDocumentVersionController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [EndpointSummary("Sets the prevent clean up status for a document version.")] - [EndpointDescription("A document version id and prevent cleanup flag are required. This will set or unset the prevent cleanup flag on the specified document version.")] + [EndpointDescription("Sets the prevent clean up boolean status for a document version to the provided value. This controls whether the version will be a candidate for removal in content history clean up.")] public async Task Set(CancellationToken cancellationToken, Guid id, bool preventCleanup) { Attempt attempt = From 1e6c9f87edc754bac3acdb919a0c396a2830cd02 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Mon, 20 Oct 2025 17:43:44 +0100 Subject: [PATCH 18/51] [WIP] Data Types --- .../Controllers/DataType/ByKeyDataTypeController.cs | 4 +++- .../Controllers/DataType/CreateDataTypeController.cs | 2 ++ .../Controllers/DataType/DeleteDataTypeController.cs | 2 ++ .../DataType/Folder/CreateDataTypeFolderController.cs | 3 ++- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs index 5418f78a4968..5f40ae54560b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.DataType; @@ -24,6 +24,8 @@ public ByKeyDataTypeController(IDataTypeService dataTypeService, IUmbracoMapper [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DataTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Get a data type by the provided Id.")] + [EndpointDescription("Get a data type by using the provided Id and result returns the data types' properties.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { IDataType? dataType = await _dataTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs index 1acea3969626..938538414d37 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CreateDataTypeController.cs @@ -33,6 +33,8 @@ public CreateDataTypeController(IDataTypeService dataTypeService, IDataTypePrese [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Creates a new data type.")] + [EndpointDescription("Creates a new data type with the provided configuration.")] public async Task Create(CancellationToken cancellationToken, CreateDataTypeRequestModel createDataTypeRequestModel) { var attempt = await _dataTypePresentationFactory.CreateAsync(createDataTypeRequestModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs index ba6cb63d8f98..e4ebf4e61c0e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs @@ -29,6 +29,8 @@ public DeleteDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Deletes a data type with a matching provided Id.")] + [EndpointDescription("Deletes a data type by using the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _dataTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs index 9de52883003f..34c88df4746a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.Folder; @@ -22,6 +22,7 @@ public CreateDataTypeFolderController( [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Creates a data type folder.")] public async Task Create(CancellationToken cancellationToken, CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, From 55d0045dfbbad54112c875aaa81fd2a25a6ffb80 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Tue, 21 Oct 2025 13:46:56 +0100 Subject: [PATCH 19/51] [WIP] Update ByKey and Configuration DataTypes --- .../Controllers/DataType/ByKeyDataTypeController.cs | 2 +- .../Controllers/DataType/ConfigurationDataTypeController.cs | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs index 5f40ae54560b..099b663beb3c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ByKeyDataTypeController.cs @@ -25,7 +25,7 @@ public ByKeyDataTypeController(IDataTypeService dataTypeService, IUmbracoMapper [ProducesResponseType(typeof(DataTypeResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Get a data type by the provided Id.")] - [EndpointDescription("Get a data type by using the provided Id and result returns the data types' properties.")] + [EndpointDescription("Get a data type by using the provided Id and the result returns the data types' properties.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) { IDataType? dataType = await _dataTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs index f0039b94d6aa..5045b1df924d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; @@ -18,6 +18,8 @@ public class ConfigurationDataTypeController : DataTypeControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DatatypeConfigurationResponseModel), StatusCodes.Status200OK)] + [EndpointSummary("Get data type configuration")] + [EndpointDescription("Gets the data type configuration settings.")] public Task Configuration(CancellationToken cancellationToken) { var responseModel = new DatatypeConfigurationResponseModel From 280a6f74af9b963826ed6fc29b66999850cff1d6 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Wed, 29 Oct 2025 21:13:21 +0000 Subject: [PATCH 20/51] [AMEND] Add additional Summary and Descritpion to API endpoints on DataTypes --- .../Controllers/DataType/CopyDataTypeController.cs | 2 ++ .../Controllers/DataType/IsUsedDataTypeController.cs | 2 ++ .../Controllers/DataType/MoveDataTypeController.cs | 2 ++ .../Controllers/DataType/ReferencesDataTypeController.cs | 2 ++ .../Controllers/DataType/UpdateDataTypeController.cs | 2 ++ 5 files changed, 10 insertions(+) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs index 6bf47269d5ce..d06b2f52f525 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs @@ -29,6 +29,8 @@ public CopyDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Copy a data type by its unique Id.")] + [EndpointDescription("Creates a duplicate of an existing data type. The copied data type will be given a new Id and have ' (copy)' appended to its name. Optionally, the copy can be placed in a specific container by providing a target container Id.")] public async Task Copy(CancellationToken cancellationToken, Guid id, CopyDataTypeRequestModel copyDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs index 0a9a048389b5..64d54941e103 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/IsUsedDataTypeController.cs @@ -21,6 +21,8 @@ public IsUsedDataTypeController(IDataTypeUsageService dataTypeUsageService) [MapToApiVersion("1.0")] [ProducesResponseType(typeof(bool), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Check if a data type is used.")] + [EndpointDescription("Checks if the data type with the provided Id is used in any content, media, or members.")] public async Task IsUsed(CancellationToken cancellationToken, Guid id) { Attempt result = await _dataTypeUsageService.HasSavedValuesAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs index e8f5230463a7..4dd7054f5b6f 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs @@ -29,6 +29,8 @@ public MoveDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Move a data type by its unique Id.")] + [EndpointDescription("Moves an existing data type to a different container. The target container Id must be provided.")] public async Task Move(CancellationToken cancellationToken, Guid id, MoveDataTypeRequestModel moveDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs index 0eee28e49b80..e7aacaf103c2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ReferencesDataTypeController.cs @@ -26,6 +26,8 @@ public ReferencesDataTypeController(IDataTypeService dataTypeService, IDataTypeR [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DataTypeReferenceResponseModel[]), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Get references to a data type by the provided Id.")] + [EndpointDescription("Get references to a data type by using the provided Id. The result returns where the data type is used.")] public async Task References(CancellationToken cancellationToken, Guid id) { Attempt>, DataTypeOperationStatus> result = await _dataTypeService.GetReferencesAsync(id); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs index 4b67b55653ce..24a7628cf458 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs @@ -33,6 +33,8 @@ public UpdateDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Updates a data type with a matching provided Id.")] + [EndpointDescription("Updates a data type by using the provided Id and request model.")] public async Task Update(CancellationToken cancellationToken, Guid id, UpdateDataTypeRequestModel updateDataTypeViewModel) { IDataType? current = await _dataTypeService.GetAsync(id); From 00c27ecd4d0af913fa83b3c6b2022423de3ee26c Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Wed, 29 Oct 2025 21:27:17 +0000 Subject: [PATCH 21/51] [AMEND] Filter / Folder / Item / References / Tree API update --- .../DataType/Filter/FilterDataTypeFilterController.cs | 4 +++- .../DataType/Folder/ByKeyDataTypeFolderController.cs | 4 +++- .../DataType/Folder/CreateDataTypeFolderController.cs | 1 + .../DataType/Folder/DeleteDataTypeFolderController.cs | 4 +++- .../DataType/Folder/UpdateDataTypeFolderController.cs | 4 +++- .../Controllers/DataType/Item/ItemDatatypeItemController.cs | 4 +++- .../Controllers/DataType/Item/SearchDataTypeItemController.cs | 4 +++- .../DataType/References/ReferencedByDataTypeController.cs | 2 ++ .../DataType/Tree/AncestorsDataTypeTreeController.cs | 2 ++ .../DataType/Tree/ChildrenDataTypeTreeController.cs | 2 ++ .../Controllers/DataType/Tree/RootDataTypeTreeController.cs | 2 ++ .../DataType/Tree/SiblingsDataTypeTreeController.cs | 2 ++ 12 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs index 5b73c7966477..aee615686a89 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Common.ViewModels.Pagination; @@ -26,6 +26,8 @@ public FilterDataTypeFilterController(IDataTypeService dataTypeService, IUmbraco [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Filter data types")] + [EndpointDescription("Filters data types by name, editor UI alias, and editor alias with pagination support.")] public async Task Filter( CancellationToken cancellationToken, int skip = 0, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs index 50f71f7a080e..2b7dddb54ad1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.Folder; @@ -21,5 +21,7 @@ public ByKeyDataTypeFolderController( [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Get a data type folder by the provided Id.")] + [EndpointDescription("Get a data type folder by using the provided Id and the result returns the folder's properties.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs index 34c88df4746a..9512ccaa5cb5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs @@ -23,6 +23,7 @@ public CreateDataTypeFolderController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Creates a data type folder.")] + [EndpointDescription("Creates a data type folder with the provided configuration.")] public async Task Create(CancellationToken cancellationToken, CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs index 5b9848d6094c..769221bf464e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Core.Security; @@ -21,5 +21,7 @@ public DeleteDataTypeFolderController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Deletes a data type folder with a matching provided Id.")] + [EndpointDescription("Deletes a data type folder by using the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) => await DeleteFolderAsync(id); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs index fa3eba2feb5f..c007a974dfff 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.Folder; @@ -22,6 +22,8 @@ public UpdateDataTypeFolderController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] + [EndpointSummary("Updates a data type folder with a matching provided Id.")] + [EndpointDescription("Updates a data type folder by using the provided Id and request model.")] public async Task Update( CancellationToken cancellationToken, Guid id, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs index 2865badec04f..b7484e009cf2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.DataType.Item; @@ -23,6 +23,8 @@ public ItemDatatypeItemController(IDataTypeService dataTypeService, IUmbracoMapp [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] + [EndpointSummary("Get data type items by the provided Ids.")] + [EndpointDescription("Get data type items by using the provided Ids and the result returns the data types' properties.")] public async Task Item( CancellationToken cancellationToken, [FromQuery(Name = "id")] HashSet ids) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs index 7e2ded6564f4..288bbea8a6e0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs @@ -1,4 +1,4 @@ -using Asp.Versioning; +using Asp.Versioning; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Management.ViewModels.DataType.Item; @@ -26,6 +26,8 @@ public SearchDataTypeItemController(IEntitySearchService entitySearchService, ID [HttpGet("search")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] + [EndpointSummary("Search data types by query.")] + [EndpointDescription("Search data types by using the provided query and the result returns paged data type items.")] public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.DataType, query, skip, take); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs index b36815d408ee..d9f63e1dde5c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs @@ -27,6 +27,8 @@ public ReferencedByDataTypeController(IDataTypeService dataTypeService, IRelatio [HttpGet("{id:guid}/referenced-by")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Get a paged list of references for the data type with the provided Id.")] + [EndpointDescription("Gets a paged list of references for the data type with the provided Id, so you can see where it is being used.")] public async Task>> ReferencedBy( CancellationToken cancellationToken, Guid id, diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs index 15a1c749f517..98e16008c6a9 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs @@ -26,6 +26,8 @@ public AncestorsDataTypeTreeController(IEntityService entityService, FlagProvide [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] + [EndpointSummary("Get ancestor data type folders for the provided descendant Id.")] + [EndpointDescription("Get ancestor data type folders by using the provided descendant Id and the result returns the ancestor folders' properties.")] public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs index 6b9e0611aace..fcda9001df6a 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs @@ -27,6 +27,8 @@ public ChildrenDataTypeTreeController(IEntityService entityService, FlagProvider [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Get data type tree children items by the provided parent Id.")] + [EndpointDescription("Get data type tree children items by using the provided parent Id and the result returns the data type tree items' properties.")] public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs index d4b5e5ef8743..7d2ca8f093ac 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs @@ -27,6 +27,8 @@ public RootDataTypeTreeController(IEntityService entityService, FlagProviderColl [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Get root data type tree items.")] + [EndpointDescription("Get root data type tree items with optional pagination and folder filtering.")] public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs index 8cd7577a96eb..504281ee496e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs @@ -24,6 +24,8 @@ public SiblingsDataTypeTreeController(IEntityService entityService, FlagProvider [HttpGet("siblings")] [ProducesResponseType(typeof(SubsetViewModel), StatusCodes.Status200OK)] + [EndpointSummary("Get sibling data types of the target data type.")] + [EndpointDescription("Get sibling data types of the target data type. The result returns a paged list of data types that are siblings to the target data type identified by the provided Id.")] public async Task>> Siblings(CancellationToken cancellationToken, Guid target, int before, int after, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); From d657af4115e976ea4f52379a9c17213623c1d8fa Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:30:10 +0000 Subject: [PATCH 22/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/ConfigurationDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs index 5045b1df924d..d8ab45a4ffba 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/ConfigurationDataTypeController.cs @@ -18,7 +18,7 @@ public class ConfigurationDataTypeController : DataTypeControllerBase [HttpGet("configuration")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(DatatypeConfigurationResponseModel), StatusCodes.Status200OK)] - [EndpointSummary("Get data type configuration")] + [EndpointSummary("Gets the data type configuration.")] [EndpointDescription("Gets the data type configuration settings.")] public Task Configuration(CancellationToken cancellationToken) { From 15d915df41b7390d1a41d79935cbf3782bb687fe Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:30:22 +0000 Subject: [PATCH 23/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/CopyDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs index d06b2f52f525..f14b2a12fab7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs @@ -29,7 +29,7 @@ public CopyDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Copy a data type by its unique Id.")] + [EndpointSummary("Copies a data type.")] [EndpointDescription("Creates a duplicate of an existing data type. The copied data type will be given a new Id and have ' (copy)' appended to its name. Optionally, the copy can be placed in a specific container by providing a target container Id.")] public async Task Copy(CancellationToken cancellationToken, Guid id, CopyDataTypeRequestModel copyDataTypeRequestModel) { From 76a8739d4f84dc901fc692bc7a3546ff3b4eb633 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:30:52 +0000 Subject: [PATCH 24/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/CopyDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs index f14b2a12fab7..1491460ac157 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/CopyDataTypeController.cs @@ -30,7 +30,7 @@ public CopyDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [ProducesResponseType(StatusCodes.Status201Created)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Copies a data type.")] - [EndpointDescription("Creates a duplicate of an existing data type. The copied data type will be given a new Id and have ' (copy)' appended to its name. Optionally, the copy can be placed in a specific container by providing a target container Id.")] + [EndpointDescription("Creates a duplicate of an existing data type identified by the provided unique Id. The copied data type will be given a new Id and have ' (copy)' appended to its name. Optionally, the copy can be placed in a specific container by providing a target container Id.")] public async Task Copy(CancellationToken cancellationToken, Guid id, CopyDataTypeRequestModel copyDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); From e0aff15fff6bf81e3ec2e72952957e6008a858eb Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:31:04 +0000 Subject: [PATCH 25/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/DeleteDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs index e4ebf4e61c0e..28410af846c6 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs @@ -30,7 +30,7 @@ public DeleteDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Deletes a data type with a matching provided Id.")] - [EndpointDescription("Deletes a data type by using the provided Id.")] + [EndpointDescription("Deletes a data type identified by the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) { Attempt result = await _dataTypeService.DeleteAsync(id, CurrentUserKey(_backOfficeSecurityAccessor)); From 4010422d9450096c0005e33bc3bb6baacd12700a Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:31:23 +0000 Subject: [PATCH 26/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/RootDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs index 7d2ca8f093ac..c9cc0250fede 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs @@ -28,7 +28,7 @@ public RootDataTypeTreeController(IEntityService entityService, FlagProviderColl [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Get root data type tree items.")] - [EndpointDescription("Get root data type tree items with optional pagination and folder filtering.")] + [EndpointDescription("Gets a paged collection of data type items from the root of the data type tree. The collection can be optionally filtered to return only folder, or folders and data types. The result returns the data type tree items' properties.")] public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); From 38979dc4576a41117f3803bfaf8e37df439be46f Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:31:38 +0000 Subject: [PATCH 27/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs index 504281ee496e..be603b2af00c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs @@ -24,7 +24,7 @@ public SiblingsDataTypeTreeController(IEntityService entityService, FlagProvider [HttpGet("siblings")] [ProducesResponseType(typeof(SubsetViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Get sibling data types of the target data type.")] + [EndpointSummary("Gets a collection of data type tree sibling items.")] [EndpointDescription("Get sibling data types of the target data type. The result returns a paged list of data types that are siblings to the target data type identified by the provided Id.")] public async Task>> Siblings(CancellationToken cancellationToken, Guid target, int before, int after, bool foldersOnly = false) { From 773617f09c73b5df5d251d46efc7424760944c5a Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:31:58 +0000 Subject: [PATCH 28/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs index be603b2af00c..b11650f6b320 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/SiblingsDataTypeTreeController.cs @@ -25,7 +25,7 @@ public SiblingsDataTypeTreeController(IEntityService entityService, FlagProvider [HttpGet("siblings")] [ProducesResponseType(typeof(SubsetViewModel), StatusCodes.Status200OK)] [EndpointSummary("Gets a collection of data type tree sibling items.")] - [EndpointDescription("Get sibling data types of the target data type. The result returns a paged list of data types that are siblings to the target data type identified by the provided Id.")] + [EndpointDescription("Gets a paged collection of data type tree items that are siblings of the provided parent Id. The collection can be optionally filtered to return only folder, or folders and data types. The result returns the data type tree items' properties.")] public async Task>> Siblings(CancellationToken cancellationToken, Guid target, int before, int after, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); From 5fb8e6b6bc277b2f22a3b69b31da307c0e42411f Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:32:07 +0000 Subject: [PATCH 29/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/UpdateDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs index 24a7628cf458..30a3475ef643 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs @@ -34,7 +34,7 @@ public UpdateDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Updates a data type with a matching provided Id.")] - [EndpointDescription("Updates a data type by using the provided Id and request model.")] + [EndpointDescription("Updates a data type by identified by the provided Id with the details provided in the request model.")] public async Task Update(CancellationToken cancellationToken, Guid id, UpdateDataTypeRequestModel updateDataTypeViewModel) { IDataType? current = await _dataTypeService.GetAsync(id); From ebdd4f0dc290e0c23c7fe5164423997f04bd8c4f Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:32:15 +0000 Subject: [PATCH 30/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/UpdateDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs index 30a3475ef643..fb434697e8ee 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/UpdateDataTypeController.cs @@ -33,7 +33,7 @@ public UpdateDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Updates a data type with a matching provided Id.")] + [EndpointSummary("Updates a data type.")] [EndpointDescription("Updates a data type by identified by the provided Id with the details provided in the request model.")] public async Task Update(CancellationToken cancellationToken, Guid id, UpdateDataTypeRequestModel updateDataTypeViewModel) { From ec5a0a93bf6cc5988a5361e926551593dbf7cfe3 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:32:32 +0000 Subject: [PATCH 31/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/DeleteDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs index 28410af846c6..bc2ecae54fe0 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/DeleteDataTypeController.cs @@ -29,7 +29,7 @@ public DeleteDataTypeController(IDataTypeService dataTypeService, IBackOfficeSec [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Deletes a data type with a matching provided Id.")] + [EndpointSummary("Deletes a data type.")] [EndpointDescription("Deletes a data type identified by the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) { From 8074ba8744ea89e2c5ab8480beed5e79a0cc890d Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:33:04 +0000 Subject: [PATCH 32/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs Co-authored-by: Andy Butland --- .../DataType/Filter/FilterDataTypeFilterController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs index aee615686a89..00a8f6064dfb 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Filter/FilterDataTypeFilterController.cs @@ -26,7 +26,7 @@ public FilterDataTypeFilterController(IDataTypeService dataTypeService, IUmbraco [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Filter data types")] + [EndpointSummary("Gets a filtered collection of data types.")] [EndpointDescription("Filters data types by name, editor UI alias, and editor alias with pagination support.")] public async Task Filter( CancellationToken cancellationToken, From c6ad3b6a68768b6a8c21413c9a0d7671f534edce Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:33:25 +0000 Subject: [PATCH 33/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/ByKeyDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs index 2b7dddb54ad1..0c586ba4b33d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs @@ -21,7 +21,7 @@ public ByKeyDataTypeFolderController( [MapToApiVersion("1.0")] [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Get a data type folder by the provided Id.")] + [EndpointSummary("Gets a data type folder.")] [EndpointDescription("Get a data type folder by using the provided Id and the result returns the folder's properties.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } From d16f942646986011ac522598aa2fc5cbea95e4eb Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:33:53 +0000 Subject: [PATCH 34/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs index fcda9001df6a..107f96a1bac7 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs @@ -28,7 +28,7 @@ public ChildrenDataTypeTreeController(IEntityService entityService, FlagProvider [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Get data type tree children items by the provided parent Id.")] - [EndpointDescription("Get data type tree children items by using the provided parent Id and the result returns the data type tree items' properties.")] + [EndpointDescription("Gets a paged collection of data type tree items that are children of the provided parent Id. The collection can be optionally filtered to return only folder, or folders and data types. The result returns the data type tree items' properties.")] public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) { RenderFoldersOnly(foldersOnly); From b95445bb30c92a07cef61c23f5798c10dfc87f3b Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:34:22 +0000 Subject: [PATCH 35/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/ByKeyDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs index 0c586ba4b33d..c7645fa2d486 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/ByKeyDataTypeFolderController.cs @@ -22,6 +22,6 @@ public ByKeyDataTypeFolderController( [ProducesResponseType(typeof(FolderResponseModel), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Gets a data type folder.")] - [EndpointDescription("Get a data type folder by using the provided Id and the result returns the folder's properties.")] + [EndpointDescription("Gets a data type folder by identified by the provided Id. The result returns the folder's properties.")] public async Task ByKey(CancellationToken cancellationToken, Guid id) => await GetFolderAsync(id); } From 0a7497be7f64f9f98f7d649f77b08955930ae4dc Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:34:47 +0000 Subject: [PATCH 36/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/DeleteDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs index 769221bf464e..f4e041f9df68 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs @@ -21,7 +21,7 @@ public DeleteDataTypeFolderController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Deletes a data type folder with a matching provided Id.")] + [EndpointSummary("Deletes a data type folder.")] [EndpointDescription("Deletes a data type folder by using the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) => await DeleteFolderAsync(id); } From 9af8a0618286dfa735d8be06b6df6bacc244a72d Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:35:09 +0000 Subject: [PATCH 37/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/UpdateDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs index c007a974dfff..fb656b1a57e1 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs @@ -22,7 +22,7 @@ public UpdateDataTypeFolderController( [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Updates a data type folder with a matching provided Id.")] + [EndpointSummary("Updates a data type folder.")] [EndpointDescription("Updates a data type folder by using the provided Id and request model.")] public async Task Update( CancellationToken cancellationToken, From 26bb1b164aa938b4f022e3c3514aca7e19701cfc Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:36:34 +0000 Subject: [PATCH 38/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/DeleteDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs index f4e041f9df68..358f69038ee8 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/DeleteDataTypeFolderController.cs @@ -22,6 +22,6 @@ public DeleteDataTypeFolderController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Deletes a data type folder.")] - [EndpointDescription("Deletes a data type folder by using the provided Id.")] + [EndpointDescription("Deletes a data type folder identified by the provided Id.")] public async Task Delete(CancellationToken cancellationToken, Guid id) => await DeleteFolderAsync(id); } From ebec197f44ec11df679893ed9694040b86622fc4 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:37:00 +0000 Subject: [PATCH 39/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs index 107f96a1bac7..25fbd906ccc4 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/ChildrenDataTypeTreeController.cs @@ -27,7 +27,7 @@ public ChildrenDataTypeTreeController(IEntityService entityService, FlagProvider [HttpGet("children")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Get data type tree children items by the provided parent Id.")] + [EndpointSummary("Gets a collection of data type tree child items.")] [EndpointDescription("Gets a paged collection of data type tree items that are children of the provided parent Id. The collection can be optionally filtered to return only folder, or folders and data types. The result returns the data type tree items' properties.")] public async Task>> Children(CancellationToken cancellationToken, Guid parentId, int skip = 0, int take = 100, bool foldersOnly = false) { From 73fd581de8354c738129b8430477969074df9875 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:37:23 +0000 Subject: [PATCH 40/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/UpdateDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs index fb656b1a57e1..ebab1d578e26 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/UpdateDataTypeFolderController.cs @@ -23,7 +23,7 @@ public UpdateDataTypeFolderController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Updates a data type folder.")] - [EndpointDescription("Updates a data type folder by using the provided Id and request model.")] + [EndpointDescription("Updates a data type folder identified by the provided Id with the details provided in the request model.")] public async Task Update( CancellationToken cancellationToken, Guid id, From 2a676eafe346197a4518abfa9dfb421579aaf18a Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:37:43 +0000 Subject: [PATCH 41/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs Co-authored-by: Andy Butland --- .../DataType/Folder/CreateDataTypeFolderController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs index 9512ccaa5cb5..6d108c1d1121 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Folder/CreateDataTypeFolderController.cs @@ -23,7 +23,7 @@ public CreateDataTypeFolderController( [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Creates a data type folder.")] - [EndpointDescription("Creates a data type folder with the provided configuration.")] + [EndpointDescription("Creates a data type folder with the details provided in the request model.")] public async Task Create(CancellationToken cancellationToken, CreateFolderRequestModel createFolderRequestModel) => await CreateFolderAsync( createFolderRequestModel, From 42e7baae7700a482792a39b001642007859daebd Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:38:14 +0000 Subject: [PATCH 42/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Item/ItemDatatypeItemController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs index b7484e009cf2..c424f81f75ec 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs @@ -23,7 +23,7 @@ public ItemDatatypeItemController(IDataTypeService dataTypeService, IUmbracoMapp [HttpGet] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - [EndpointSummary("Get data type items by the provided Ids.")] + [EndpointSummary("Gets a collection of data type items.")] [EndpointDescription("Get data type items by using the provided Ids and the result returns the data types' properties.")] public async Task Item( CancellationToken cancellationToken, From 8d95163ea452ed1b24568640f55bf76ecc2c10b7 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:43:11 +0000 Subject: [PATCH 43/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Item/ItemDatatypeItemController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs index c424f81f75ec..a333f3cb6bde 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/ItemDatatypeItemController.cs @@ -24,7 +24,7 @@ public ItemDatatypeItemController(IDataTypeService dataTypeService, IUmbracoMapp [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [EndpointSummary("Gets a collection of data type items.")] - [EndpointDescription("Get data type items by using the provided Ids and the result returns the data types' properties.")] + [EndpointDescription("Get a collection of data type items identified by the provided Ids. Each result contains the data types' properties.")] public async Task Item( CancellationToken cancellationToken, [FromQuery(Name = "id")] HashSet ids) From 578c4106a2d2e583d3f843720e2d7961dffce9aa Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:43:57 +0000 Subject: [PATCH 44/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../DataType/Tree/AncestorsDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs index 98e16008c6a9..2c1af5449282 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs @@ -26,7 +26,7 @@ public AncestorsDataTypeTreeController(IEntityService entityService, FlagProvide [HttpGet("ancestors")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - [EndpointSummary("Get ancestor data type folders for the provided descendant Id.")] + [EndpointSummary("Gets a collection of ancestor data type folders.")] [EndpointDescription("Get ancestor data type folders by using the provided descendant Id and the result returns the ancestor folders' properties.")] public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); From 28de6f5bbfde56bafacdd2aa1df4d858e660e84c Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:44:24 +0000 Subject: [PATCH 45/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Item/SearchDataTypeItemController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs index 288bbea8a6e0..8e4d69242e5e 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Item/SearchDataTypeItemController.cs @@ -27,7 +27,7 @@ public SearchDataTypeItemController(IEntitySearchService entitySearchService, ID [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedModel), StatusCodes.Status200OK)] [EndpointSummary("Search data types by query.")] - [EndpointDescription("Search data types by using the provided query and the result returns paged data type items.")] + [EndpointDescription("Gets a paged collection of data type items identified by provided query.")] public async Task Search(CancellationToken cancellationToken, string query, int skip = 0, int take = 100) { PagedModel searchResult = _entitySearchService.Search(UmbracoObjectTypes.DataType, query, skip, take); From ef75901f6f126a29890daec808ed705c2c08274e Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:44:42 +0000 Subject: [PATCH 46/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/MoveDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs index 4dd7054f5b6f..24321fe572d2 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs @@ -29,7 +29,7 @@ public MoveDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [MapToApiVersion("1.0")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] - [EndpointSummary("Move a data type by its unique Id.")] + [EndpointSummary("Moves a data type.")] [EndpointDescription("Moves an existing data type to a different container. The target container Id must be provided.")] public async Task Move(CancellationToken cancellationToken, Guid id, MoveDataTypeRequestModel moveDataTypeRequestModel) { From cc0b30f54ee2a70df4e9613fd9bb5c4fa499d8fe Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:45:01 +0000 Subject: [PATCH 47/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/MoveDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs index 24321fe572d2..36ce835dcd7c 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/MoveDataTypeController.cs @@ -30,7 +30,7 @@ public MoveDataTypeController(IDataTypeService dataTypeService, IBackOfficeSecur [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(typeof(ProblemDetails), StatusCodes.Status404NotFound)] [EndpointSummary("Moves a data type.")] - [EndpointDescription("Moves an existing data type to a different container. The target container Id must be provided.")] + [EndpointDescription("Moves an existing data type identified by Id to a different container. The target container Id must be provided in the request model.")] public async Task Move(CancellationToken cancellationToken, Guid id, MoveDataTypeRequestModel moveDataTypeRequestModel) { IDataType? source = await _dataTypeService.GetAsync(id); From 184fc949654b73221d41797706a2882570d03e13 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:45:19 +0000 Subject: [PATCH 48/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs Co-authored-by: Andy Butland --- .../DataType/References/ReferencedByDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs index d9f63e1dde5c..b5e61e679480 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs @@ -27,7 +27,7 @@ public ReferencedByDataTypeController(IDataTypeService dataTypeService, IRelatio [HttpGet("{id:guid}/referenced-by")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Get a paged list of references for the data type with the provided Id.")] + [EndpointSummary("Gets a paged collection of entities that are referenced by a data type.")] [EndpointDescription("Gets a paged list of references for the data type with the provided Id, so you can see where it is being used.")] public async Task>> ReferencedBy( CancellationToken cancellationToken, From 502c58b0baceffda9be26e09b9fd535fdea38666 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:46:34 +0000 Subject: [PATCH 49/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../DataType/Tree/AncestorsDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs index 2c1af5449282..c6f7390732b5 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/AncestorsDataTypeTreeController.cs @@ -27,7 +27,7 @@ public AncestorsDataTypeTreeController(IEntityService entityService, FlagProvide [MapToApiVersion("1.0")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [EndpointSummary("Gets a collection of ancestor data type folders.")] - [EndpointDescription("Get ancestor data type folders by using the provided descendant Id and the result returns the ancestor folders' properties.")] + [EndpointDescription("Gets a collection of data type folders that are ancestors to the provided Id. The result returns the ancestor folders' properties.")] public async Task>> Ancestors(CancellationToken cancellationToken, Guid descendantId) => await GetAncestors(descendantId); } From 3a6ba606ba69a20e4a55fc53a52e2f466dac25ff Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:47:41 +0000 Subject: [PATCH 50/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs Co-authored-by: Andy Butland --- .../DataType/References/ReferencedByDataTypeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs index b5e61e679480..49b7af54ecea 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/References/ReferencedByDataTypeController.cs @@ -28,7 +28,7 @@ public ReferencedByDataTypeController(IDataTypeService dataTypeService, IRelatio [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] [EndpointSummary("Gets a paged collection of entities that are referenced by a data type.")] - [EndpointDescription("Gets a paged list of references for the data type with the provided Id, so you can see where it is being used.")] + [EndpointDescription("Gets a paged collection of entities that are referenced by the data type with the provided Id, so you can see where it is being used.")] public async Task>> ReferencedBy( CancellationToken cancellationToken, Guid id, From 66e8aa8d6722bf27763241f61c63f248c9bbde01 Mon Sep 17 00:00:00 2001 From: Owain Williams Date: Thu, 30 Oct 2025 07:48:13 +0000 Subject: [PATCH 51/51] Update src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs Co-authored-by: Andy Butland --- .../Controllers/DataType/Tree/RootDataTypeTreeController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs index c9cc0250fede..94bf8dd31502 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/DataType/Tree/RootDataTypeTreeController.cs @@ -27,7 +27,7 @@ public RootDataTypeTreeController(IEntityService entityService, FlagProviderColl [HttpGet("root")] [MapToApiVersion("1.0")] [ProducesResponseType(typeof(PagedViewModel), StatusCodes.Status200OK)] - [EndpointSummary("Get root data type tree items.")] + [EndpointSummary("Gets a collection of data type items from the root of the data type tree.")] [EndpointDescription("Gets a paged collection of data type items from the root of the data type tree. The collection can be optionally filtered to return only folder, or folders and data types. The result returns the data type tree items' properties.")] public async Task>> Root(CancellationToken cancellationToken, int skip = 0, int take = 100, bool foldersOnly = false) {