diff --git a/src/modules/Elsa.Workflows.Api/Elsa.Workflows.Api.csproj b/src/modules/Elsa.Workflows.Api/Elsa.Workflows.Api.csproj
index 4fff95dc9..94828c0a3 100644
--- a/src/modules/Elsa.Workflows.Api/Elsa.Workflows.Api.csproj
+++ b/src/modules/Elsa.Workflows.Api/Elsa.Workflows.Api.csproj
@@ -15,4 +15,8 @@
+
+
+
+
diff --git a/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Activities/List/Endpoint.cs b/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Activities/List/Endpoint.cs
new file mode 100644
index 000000000..c7383256a
--- /dev/null
+++ b/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Activities/List/Endpoint.cs
@@ -0,0 +1,28 @@
+using Elsa.Abstractions;
+using Elsa.Models;
+using Elsa.Workflows.CommitStates;
+
+namespace Elsa.Workflows.Api.Endpoints.CommitStrategies.Activities.List;
+
+///
+/// Represents an API endpoint that provides a list of registered workflow commit strategies.
+///
+///
+/// This class is an implementation of an endpoint that retrieves a collection of workflow commit strategy registrations
+/// from a provided registry and returns them in a unified response.
+///
+internal class List(ICommitStrategyRegistry registry) : ElsaEndpointWithoutRequest>
+{
+ public override void Configure()
+ {
+ Get("/descriptors/commit-strategies/activities");
+ ConfigurePermissions("read:commit-strategies");
+ }
+
+ public override Task> ExecuteAsync(CancellationToken cancellationToken)
+ {
+ var descriptors = registry.ListActivityStrategyRegistrations().ToList();
+ var response =new ListResponse(descriptors);
+ return Task.FromResult(response);
+ }
+}
\ No newline at end of file
diff --git a/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/List/Endpoint.cs b/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/List/Endpoint.cs
deleted file mode 100644
index 2828013ca..000000000
--- a/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/List/Endpoint.cs
+++ /dev/null
@@ -1,43 +0,0 @@
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
-using System.Reflection;
-using Elsa.Abstractions;
-using Elsa.Extensions;
-using Elsa.Models;
-using Humanizer;
-
-namespace Elsa.Workflows.Api.Endpoints.CommitStrategies.List;
-
-///
-/// Returns list of available implementations.
-///
-internal class List(IEnumerable strategies) : ElsaEndpointWithoutRequest>
-{
- public override void Configure()
- {
- Get("/descriptors/incident-strategies");
- ConfigurePermissions("read:incident-strategies");
- }
-
- public override Task> ExecuteAsync(CancellationToken cancellationToken)
- {
- var descriptors = strategies.Select(IncidentStrategyDescriptor.FromStrategy).OrderBy(x => x.DisplayName).ToList();
- var response =new ListResponse(descriptors);
- return Task.FromResult(response);
- }
-}
-
-internal record IncidentStrategyDescriptor(string DisplayName, string Description, string TypeName)
-{
- public static IncidentStrategyDescriptor FromStrategy(IIncidentStrategy strategy)
- {
- var type = strategy.GetType();
- var displayNameAttribute = type.GetCustomAttribute();
- var descriptionAttribute = type.GetCustomAttribute();
- var displayAttribute = type.GetCustomAttribute();
- var displayName = displayNameAttribute?.DisplayName ?? displayAttribute?.Name ?? type.Name.Replace("Strategy", "").Humanize();
- var description = descriptionAttribute?.Description ?? displayAttribute?.Description ?? "";
-
- return new IncidentStrategyDescriptor(displayName, description, type.GetSimpleAssemblyQualifiedName());
- }
-}
\ No newline at end of file
diff --git a/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Workflows/List/Endpoint.cs b/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Workflows/List/Endpoint.cs
new file mode 100644
index 000000000..3ee03c549
--- /dev/null
+++ b/src/modules/Elsa.Workflows.Api/Endpoints/CommitStrategies/Workflows/List/Endpoint.cs
@@ -0,0 +1,28 @@
+using Elsa.Abstractions;
+using Elsa.Models;
+using Elsa.Workflows.CommitStates;
+
+namespace Elsa.Workflows.Api.Endpoints.CommitStrategies.Workflows.List;
+
+///
+/// Represents an API endpoint that provides a list of registered workflow commit strategies.
+///
+///
+/// This class is an implementation of an endpoint that retrieves a collection of workflow commit strategy registrations
+/// from a provided registry and returns them in a unified response.
+///
+internal class List(ICommitStrategyRegistry registry) : ElsaEndpointWithoutRequest>
+{
+ public override void Configure()
+ {
+ Get("/descriptors/commit-strategies/workflows");
+ ConfigurePermissions("read:commit-strategies");
+ }
+
+ public override Task> ExecuteAsync(CancellationToken cancellationToken)
+ {
+ var descriptors = registry.ListWorkflowStrategyRegistrations().ToList();
+ var response =new ListResponse(descriptors);
+ return Task.FromResult(response);
+ }
+}
\ No newline at end of file