diff options
Diffstat (limited to 'src/SendGrid/Helpers/Mail/Model')
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/ASM.cs | 14 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/Attachment.cs | 22 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/BCCSettings.cs | 13 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/BypassListManagement.cs | 10 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/ClickTracking.cs | 13 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/Content.cs | 41 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/EmailAddress.cs | 23 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/FooterSettings.cs | 16 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/Ganalytics.cs | 25 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/MailSettings.cs | 22 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/OpenTracking.cs | 13 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/Personalization.cs | 32 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/SandboxMode.cs | 10 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/SpamCheck.cs | 16 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/SubscriptionTracking.cs | 19 | ||||
-rw-r--r-- | src/SendGrid/Helpers/Mail/Model/TrackingSettings.cs | 19 |
16 files changed, 308 insertions, 0 deletions
diff --git a/src/SendGrid/Helpers/Mail/Model/ASM.cs b/src/SendGrid/Helpers/Mail/Model/ASM.cs new file mode 100644 index 0000000..f300780 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/ASM.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class ASM + { + [JsonProperty(PropertyName = "group_id")] + public int GroupId { get; set; } + + [JsonProperty(PropertyName = "groups_to_display")] + public List<int> GroupsToDisplay { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/Attachment.cs b/src/SendGrid/Helpers/Mail/Model/Attachment.cs new file mode 100644 index 0000000..cc2bfd6 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/Attachment.cs @@ -0,0 +1,22 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class Attachment + { + [JsonProperty(PropertyName = "content")] + public string Content { get; set; } + + [JsonProperty(PropertyName = "type")] + public string Type { get; set; } + + [JsonProperty(PropertyName = "filename")] + public string Filename { get; set; } + + [JsonProperty(PropertyName = "disposition")] + public string Disposition { get; set; } + + [JsonProperty(PropertyName = "content_id")] + public string ContentId { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/BCCSettings.cs b/src/SendGrid/Helpers/Mail/Model/BCCSettings.cs new file mode 100644 index 0000000..79f989e --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/BCCSettings.cs @@ -0,0 +1,13 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class BCCSettings + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + + [JsonProperty(PropertyName = "email")] + public string Email { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/BypassListManagement.cs b/src/SendGrid/Helpers/Mail/Model/BypassListManagement.cs new file mode 100644 index 0000000..cb4cfed --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/BypassListManagement.cs @@ -0,0 +1,10 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class BypassListManagement + { + [JsonProperty(PropertyName = "enable")] + public bool Enable { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/ClickTracking.cs b/src/SendGrid/Helpers/Mail/Model/ClickTracking.cs new file mode 100644 index 0000000..b8f82f5 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/ClickTracking.cs @@ -0,0 +1,13 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class ClickTracking + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + + [JsonProperty(PropertyName = "enable_text")] + public bool? EnableText { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/Content.cs b/src/SendGrid/Helpers/Mail/Model/Content.cs new file mode 100644 index 0000000..0f05156 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/Content.cs @@ -0,0 +1,41 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class Content + { + public Content() + { + } + + public Content(string type, string value) + { + this.Type = type; + this.Value = value; + } + + [JsonProperty(PropertyName = "type")] + public string Type { get; set; } + + [JsonProperty(PropertyName = "value")] + public string Value { get; set; } + } + + public class PlainTextContent : Content + { + public PlainTextContent(string value) + { + this.Type = MimeType.Text; + this.Value = value; + } + } + + public class HtmlContent : Content + { + public HtmlContent(string value) + { + this.Type = MimeType.Html; + this.Value = value; + } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/EmailAddress.cs b/src/SendGrid/Helpers/Mail/Model/EmailAddress.cs new file mode 100644 index 0000000..e1ba319 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/EmailAddress.cs @@ -0,0 +1,23 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class EmailAddress + { + public EmailAddress() + { + } + + public EmailAddress(string email, string name = null) + { + this.Email = email; + this.Name = name; + } + + [JsonProperty(PropertyName = "name")] + public string Name { get; set; } + + [JsonProperty(PropertyName = "email")] + public string Email { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/FooterSettings.cs b/src/SendGrid/Helpers/Mail/Model/FooterSettings.cs new file mode 100644 index 0000000..5ef64f7 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/FooterSettings.cs @@ -0,0 +1,16 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class FooterSettings + { + [JsonProperty(PropertyName = "enable")] + public bool Enable { get; set; } + + [JsonProperty(PropertyName = "text")] + public string Text { get; set; } + + [JsonProperty(PropertyName = "html")] + public string Html { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/Ganalytics.cs b/src/SendGrid/Helpers/Mail/Model/Ganalytics.cs new file mode 100644 index 0000000..071da50 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/Ganalytics.cs @@ -0,0 +1,25 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class Ganalytics + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + + [JsonProperty(PropertyName = "utm_source")] + public string UtmSource { get; set; } + + [JsonProperty(PropertyName = "utm_medium")] + public string UtmMedium { get; set; } + + [JsonProperty(PropertyName = "utm_term")] + public string UtmTerm { get; set; } + + [JsonProperty(PropertyName = "utm_content")] + public string UtmContent { get; set; } + + [JsonProperty(PropertyName = "utm_campaign")] + public string UtmCampaign { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/MailSettings.cs b/src/SendGrid/Helpers/Mail/Model/MailSettings.cs new file mode 100644 index 0000000..1875603 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/MailSettings.cs @@ -0,0 +1,22 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class MailSettings + { + [JsonProperty(PropertyName = "bcc")] + public BCCSettings BccSettings { get; set; } + + [JsonProperty(PropertyName = "bypass_list_management")] + public BypassListManagement BypassListManagement { get; set; } + + [JsonProperty(PropertyName = "footer")] + public FooterSettings FooterSettings { get; set; } + + [JsonProperty(PropertyName = "sandbox_mode")] + public SandboxMode SandboxMode { get; set; } + + [JsonProperty(PropertyName = "spam_check")] + public SpamCheck SpamCheck { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/OpenTracking.cs b/src/SendGrid/Helpers/Mail/Model/OpenTracking.cs new file mode 100644 index 0000000..b171a0b --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/OpenTracking.cs @@ -0,0 +1,13 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class OpenTracking + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + + [JsonProperty(PropertyName = "substitution_tag")] + public string SubstitutionTag { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/Personalization.cs b/src/SendGrid/Helpers/Mail/Model/Personalization.cs new file mode 100644 index 0000000..54a3506 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/Personalization.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class Personalization + { + [JsonProperty(PropertyName = "to")] + public List<EmailAddress> Tos { get; set; } + + [JsonProperty(PropertyName = "cc")] + public List<EmailAddress> Ccs { get; set; } + + [JsonProperty(PropertyName = "bcc")] + public List<EmailAddress> Bccs { get; set; } + + [JsonProperty(PropertyName = "subject")] + public string Subject { get; set; } + + [JsonProperty(PropertyName = "headers")] + public Dictionary<string, string> Headers { get; set; } + + [JsonProperty(PropertyName = "substitutions")] + public Dictionary<string, string> Substitutions { get; set; } + + [JsonProperty(PropertyName = "custom_args")] + public Dictionary<string, string> CustomArgs { get; set; } + + [JsonProperty(PropertyName = "send_at")] + public long? SendAt { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/SandboxMode.cs b/src/SendGrid/Helpers/Mail/Model/SandboxMode.cs new file mode 100644 index 0000000..7dea93e --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/SandboxMode.cs @@ -0,0 +1,10 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class SandboxMode + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/SpamCheck.cs b/src/SendGrid/Helpers/Mail/Model/SpamCheck.cs new file mode 100644 index 0000000..8b1abf4 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/SpamCheck.cs @@ -0,0 +1,16 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class SpamCheck + { + [JsonProperty(PropertyName = "enable")] + public bool? Enable { get; set; } + + [JsonProperty(PropertyName = "threshold")] + public int? Threshold { get; set; } + + [JsonProperty(PropertyName = "post_to_url")] + public string PostToUrl { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/SubscriptionTracking.cs b/src/SendGrid/Helpers/Mail/Model/SubscriptionTracking.cs new file mode 100644 index 0000000..ce5704e --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/SubscriptionTracking.cs @@ -0,0 +1,19 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class SubscriptionTracking + { + [JsonProperty(PropertyName = "enable")] + public bool Enable { get; set; } + + [JsonProperty(PropertyName = "text")] + public string Text { get; set; } + + [JsonProperty(PropertyName = "html")] + public string Html { get; set; } + + [JsonProperty(PropertyName = "substitution_tag")] + public string SubstitutionTag { get; set; } + } +}
\ No newline at end of file diff --git a/src/SendGrid/Helpers/Mail/Model/TrackingSettings.cs b/src/SendGrid/Helpers/Mail/Model/TrackingSettings.cs new file mode 100644 index 0000000..73f8056 --- /dev/null +++ b/src/SendGrid/Helpers/Mail/Model/TrackingSettings.cs @@ -0,0 +1,19 @@ +using Newtonsoft.Json; + +namespace SendGrid.Helpers.Mail +{ + public class TrackingSettings + { + [JsonProperty(PropertyName = "click_tracking")] + public ClickTracking ClickTracking { get; set; } + + [JsonProperty(PropertyName = "open_tracking")] + public OpenTracking OpenTracking { get; set; } + + [JsonProperty(PropertyName = "subscription_tracking")] + public SubscriptionTracking SubscriptionTracking { get; set; } + + [JsonProperty(PropertyName = "ganalytics")] + public Ganalytics Ganalytics { get; set; } + } +}
\ No newline at end of file |