diff --git a/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailCreateDto.cs b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailCreateDto.cs
new file mode 100644
index 0000000..715f336
--- /dev/null
+++ b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailCreateDto.cs
@@ -0,0 +1,26 @@
+namespace DigitalData.MessagingService.Publisher.Abstraction;
+
+public record OutgoingEmailCreateDto
+{
+ ///
+ /// Recipient email address
+ ///
+ public string Recipient { get; set; } = null!;
+
+ ///
+ /// Email subject
+ ///
+ public string Subject { get; set; } = null!;
+
+ ///
+ /// Email body (HTML or plain text)
+ ///
+ public string Body { get; set; } = null!;
+
+ ///
+ /// Is HTML email (default: true)
+ ///
+ public bool IsHtml { get; set; } = true;
+
+ public DateTime QueuedAt { get; set; }
+}
\ No newline at end of file
diff --git a/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs
index ea66be9..5250208 100644
--- a/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs
+++ b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs
@@ -1,8 +1,6 @@
-using System;
+namespace DigitalData.MessagingService.Publisher.Abstraction;
-namespace DigitalData.MessagingService.Publisher.Abstraction;
-
-public class OutgoingEmailEvent
+public record OutgoingEmailEvent
{
public Guid Id { get; set; }