diff --git a/src/clients/Elsa.Api.Client/Activities/Activity.cs b/src/clients/Elsa.Api.Client/Activities/Activity.cs
index d325a573b..8f04426eb 100644
--- a/src/clients/Elsa.Api.Client/Activities/Activity.cs
+++ b/src/clients/Elsa.Api.Client/Activities/Activity.cs
@@ -3,7 +3,7 @@ using Elsa.Api.Client.Extensions;
namespace Elsa.Api.Client.Activities;
///
-/// Represents an activity in a workflow definition.
+/// Represents an activity.
///
public class Activity : Dictionary
{
@@ -15,6 +15,15 @@ public class Activity : Dictionary
get => this.TryGetValue("id")!;
set => this["id"] = value;
}
+
+ ///
+ /// Gets or sets the name of this activity.
+ ///
+ public string? Name
+ {
+ get => this.TryGetValue("name")!;
+ set => this["name"] = value!;
+ }
///
/// Gets or sets the type of this activity.
diff --git a/src/clients/Elsa.Api.Client/Resources/WorkflowDefinitions/Models/WorkflowDefinitionModel.cs b/src/clients/Elsa.Api.Client/Resources/WorkflowDefinitions/Models/WorkflowDefinitionModel.cs
index edc93e786..45b1dbebc 100644
--- a/src/clients/Elsa.Api.Client/Resources/WorkflowDefinitions/Models/WorkflowDefinitionModel.cs
+++ b/src/clients/Elsa.Api.Client/Resources/WorkflowDefinitions/Models/WorkflowDefinitionModel.cs
@@ -30,6 +30,7 @@ public record WorkflowDefinitionModel(
string? Description,
DateTimeOffset CreatedAt,
int Version,
+ Version? ToolVersion,
ICollection? Variables,
ICollection? Inputs,
ICollection? Outputs,
@@ -59,6 +60,7 @@ public record WorkflowDefinitionModel(
default!,
default!,
default!,
+ default!,
default!)
{
}
diff --git a/src/modules/Elsa.Workflows.Core/Contracts/IActivity.cs b/src/modules/Elsa.Workflows.Core/Contracts/IActivity.cs
index 590f0e367..8f45554e8 100644
--- a/src/modules/Elsa.Workflows.Core/Contracts/IActivity.cs
+++ b/src/modules/Elsa.Workflows.Core/Contracts/IActivity.cs
@@ -13,6 +13,11 @@ public interface IActivity
///
string Id { get; set; }
+ ///
+ /// An optional name by which the activity can be referenced.
+ ///
+ string? Name { get; set; }
+
///
/// The logical type name of the activity.
///
diff --git a/src/modules/Elsa.Workflows.Core/Models/Activity.cs b/src/modules/Elsa.Workflows.Core/Models/Activity.cs
index d59ad5171..389988513 100644
--- a/src/modules/Elsa.Workflows.Core/Models/Activity.cs
+++ b/src/modules/Elsa.Workflows.Core/Models/Activity.cs
@@ -35,6 +35,9 @@ public abstract class Activity : IActivity, ISignalHandler
///
public string Id { get; set; } = default!;
+
+ ///
+ public string? Name { get; set; }
///
public string Type { get; set; }
diff --git a/src/modules/Elsa.Workflows.Management/Models/WorkflowDefinitionSummary.cs b/src/modules/Elsa.Workflows.Management/Models/WorkflowDefinitionSummary.cs
index d2227d3c1..72710bfd8 100644
--- a/src/modules/Elsa.Workflows.Management/Models/WorkflowDefinitionSummary.cs
+++ b/src/modules/Elsa.Workflows.Management/Models/WorkflowDefinitionSummary.cs
@@ -19,6 +19,7 @@ public class WorkflowDefinitionSummary
Name = workflowDefinition.Name,
Description = workflowDefinition.Description,
Version = workflowDefinition.Version,
+ ToolVersion = workflowDefinition.ToolVersion,
IsLatest = workflowDefinition.IsLatest,
IsPublished = workflowDefinition.IsPublished,
ProviderName = workflowDefinition.ProviderName,
@@ -51,6 +52,11 @@ public class WorkflowDefinitionSummary
///
public int? Version { get; set; }
+ ///
+ /// The version of the tool that created the workflow definition.
+ ///
+ public Version? ToolVersion { get; set; }
+
///
/// Whether this is the latest version of the workflow definition.
///