diff --git a/src/Umbraco.Core/Models/Email/NotificationEmailAddress.cs b/src/Umbraco.Core/Models/Email/NotificationEmailAddress.cs
new file mode 100644
index 0000000000..04da915fab
--- /dev/null
+++ b/src/Umbraco.Core/Models/Email/NotificationEmailAddress.cs
@@ -0,0 +1,18 @@
+namespace Umbraco.Cms.Core.Models.Email
+{
+ ///
+ /// Represents an email address used for notifications. Contains both the address and its display name.
+ ///
+ public class NotificationEmailAddress
+ {
+ public string DisplayName { get; }
+
+ public string Adress { get; }
+
+ public NotificationEmailAddress(string address, string displayName)
+ {
+ Adress = address;
+ DisplayName = displayName;
+ }
+ }
+}
diff --git a/src/Umbraco.Core/Models/Email/NotificationEmailModel.cs b/src/Umbraco.Core/Models/Email/NotificationEmailModel.cs
new file mode 100644
index 0000000000..a7fe0bd846
--- /dev/null
+++ b/src/Umbraco.Core/Models/Email/NotificationEmailModel.cs
@@ -0,0 +1,50 @@
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Umbraco.Cms.Core.Models.Email
+{
+ ///
+ /// Represents an email when sent with notifications.
+ ///
+ public class NotificationEmailModel
+ {
+ public NotificationEmailAddress From { get; }
+
+ public IEnumerable To { get; }
+
+ public IEnumerable Cc { get; }
+
+ public IEnumerable Bcc { get; }
+
+ public IEnumerable ReplyTo { get; }
+
+ public string Subject { get; }
+
+ public string Body { get; }
+
+ public IList Attachments { get; }
+
+ public bool HasAttachments => Attachments != null && Attachments.Count > 0;
+
+ public NotificationEmailModel(
+ NotificationEmailAddress from,
+ IEnumerable to,
+ IEnumerable cc,
+ IEnumerable bcc,
+ IEnumerable replyTo,
+ string subject,
+ string body,
+ IEnumerable attachments)
+ {
+ From = from;
+ To = to;
+ Cc = cc;
+ Bcc = bcc;
+ ReplyTo = replyTo;
+ Subject = subject;
+ Body = body;
+ Attachments = attachments?.ToList();
+ }
+
+ }
+}