aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py')
-rw-r--r--.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py243
1 files changed, 243 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py b/.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py
new file mode 100644
index 00000000..78499ac3
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/sendgrid/helpers/mail/mail_settings.py
@@ -0,0 +1,243 @@
+class MailSettings(object):
+ """A collection of mail settings that specify how to handle this email."""
+
+ def __init__(self,
+ bcc_settings=None,
+ bypass_bounce_management=None,
+ bypass_list_management=None,
+ bypass_spam_management=None,
+ bypass_unsubscribe_management=None,
+ footer_settings=None,
+ sandbox_mode=None,
+ spam_check=None):
+ """Create a MailSettings object
+
+ :param bcc_settings: The BCC Settings of this MailSettings
+ :type bcc_settings: BCCSettings, optional
+ :param bypass_bounce_management: Whether this MailSettings bypasses bounce management.
+ Should not be combined with bypass_list_management.
+ :type bypass_list_management: BypassBounceManagement, optional
+ :param bypass_list_management: Whether this MailSettings bypasses list
+ management
+ :type bypass_list_management: BypassListManagement, optional
+ :param bypass_spam_management: Whether this MailSettings bypasses spam management.
+ Should not be combined with bypass_list_management.
+ :type bypass_list_management: BypassSpamManagement, optional
+ :param bypass_unsubscribe_management: Whether this MailSettings bypasses unsubscribe management.
+ Should not be combined with bypass_list_management.
+ :type bypass_list_management: BypassUnsubscribeManagement, optional
+ :param footer_settings: The default footer specified by this
+ MailSettings
+ :type footer_settings: FooterSettings, optional
+ :param sandbox_mode: Whether this MailSettings enables sandbox mode
+ :type sandbox_mode: SandBoxMode, optional
+ :param spam_check: How this MailSettings requests email to be checked
+ for spam
+ :type spam_check: SpamCheck, optional
+ """
+ self._bcc_settings = None
+ self._bypass_bounce_management = None
+ self._bypass_list_management = None
+ self._bypass_spam_management = None
+ self._bypass_unsubscribe_management = None
+ self._footer_settings = None
+ self._sandbox_mode = None
+ self._spam_check = None
+
+ if bcc_settings is not None:
+ self.bcc_settings = bcc_settings
+
+ if bypass_bounce_management is not None:
+ self.bypass_bounce_management = bypass_bounce_management
+
+ if bypass_list_management is not None:
+ self.bypass_list_management = bypass_list_management
+
+ if bypass_spam_management is not None:
+ self.bypass_spam_management = bypass_spam_management
+
+ if bypass_unsubscribe_management is not None:
+ self.bypass_unsubscribe_management = bypass_unsubscribe_management
+
+ if footer_settings is not None:
+ self.footer_settings = footer_settings
+
+ if sandbox_mode is not None:
+ self.sandbox_mode = sandbox_mode
+
+ if spam_check is not None:
+ self.spam_check = spam_check
+
+ @property
+ def bcc_settings(self):
+ """The BCC Settings of this MailSettings.
+
+ :rtype: BCCSettings
+ """
+ return self._bcc_settings
+
+ @bcc_settings.setter
+ def bcc_settings(self, value):
+ """The BCC Settings of this MailSettings.
+
+ :param value: The BCC Settings of this MailSettings.
+ :type value: BCCSettings
+ """
+ self._bcc_settings = value
+
+ @property
+ def bypass_bounce_management(self):
+ """Whether this MailSettings bypasses bounce management.
+
+ :rtype: BypassBounceManagement
+ """
+ return self._bypass_bounce_management
+
+ @bypass_bounce_management.setter
+ def bypass_bounce_management(self, value):
+ """Whether this MailSettings bypasses bounce management.
+
+ :param value: Whether this MailSettings bypasses bounce management.
+ :type value: BypassBounceManagement
+ """
+ self._bypass_bounce_management = value
+
+ @property
+ def bypass_list_management(self):
+ """Whether this MailSettings bypasses list management.
+
+ :rtype: BypassListManagement
+ """
+ return self._bypass_list_management
+
+ @bypass_list_management.setter
+ def bypass_list_management(self, value):
+ """Whether this MailSettings bypasses list management.
+
+ :param value: Whether this MailSettings bypasses list management.
+ :type value: BypassListManagement
+ """
+ self._bypass_list_management = value
+
+ @property
+ def bypass_spam_management(self):
+ """Whether this MailSettings bypasses spam management.
+
+ :rtype: BypassSpamManagement
+ """
+ return self._bypass_spam_management
+
+ @bypass_spam_management.setter
+ def bypass_spam_management(self, value):
+ """Whether this MailSettings bypasses spam management.
+
+ :param value: Whether this MailSettings bypasses spam management.
+ :type value: BypassSpamManagement
+ """
+ self._bypass_spam_management = value
+
+ @property
+ def bypass_unsubscribe_management(self):
+ """Whether this MailSettings bypasses unsubscribe management.
+
+ :rtype: BypassUnsubscribeManagement
+ """
+ return self._bypass_unsubscribe_management
+
+ @bypass_unsubscribe_management.setter
+ def bypass_unsubscribe_management(self, value):
+ """Whether this MailSettings bypasses unsubscribe management.
+
+ :param value: Whether this MailSettings bypasses unsubscribe management.
+ :type value: BypassUnsubscribeManagement
+ """
+ self._bypass_unsubscribe_management = value
+
+ @property
+ def footer_settings(self):
+ """The default footer specified by this MailSettings.
+
+ :rtype: FooterSettings
+ """
+ return self._footer_settings
+
+ @footer_settings.setter
+ def footer_settings(self, value):
+ """The default footer specified by this MailSettings.
+
+ :param value: The default footer specified by this MailSettings.
+ :type value: FooterSettings
+ """
+ self._footer_settings = value
+
+ @property
+ def sandbox_mode(self):
+ """Whether this MailSettings enables sandbox mode.
+
+ :rtype: SandBoxMode
+ """
+ return self._sandbox_mode
+
+ @sandbox_mode.setter
+ def sandbox_mode(self, value):
+ """Whether this MailSettings enables sandbox mode.
+
+ :param value: Whether this MailSettings enables sandbox mode.
+ :type value: SandBoxMode
+ """
+ self._sandbox_mode = value
+
+ @property
+ def spam_check(self):
+ """How this MailSettings requests email to be checked for spam.
+
+ :rtype: SpamCheck
+ """
+ return self._spam_check
+
+ @spam_check.setter
+ def spam_check(self, value):
+ """How this MailSettings requests email to be checked for spam.
+
+ :param value: How this MailSettings requests email to be checked
+ for spam.
+ :type value: SpamCheck
+ """
+ self._spam_check = value
+
+ def get(self):
+ """
+ Get a JSON-ready representation of this MailSettings.
+
+ :returns: This MailSettings, ready for use in a request body.
+ :rtype: dict
+ """
+ mail_settings = {}
+ if self.bcc_settings is not None:
+ mail_settings["bcc"] = self.bcc_settings.get()
+
+ if self.bypass_bounce_management is not None:
+ mail_settings[
+ "bypass_bounce_management"] = self.bypass_bounce_management.get()
+
+ if self.bypass_list_management is not None:
+ mail_settings[
+ "bypass_list_management"] = self.bypass_list_management.get()
+
+ if self.bypass_spam_management is not None:
+ mail_settings[
+ "bypass_spam_management"] = self.bypass_spam_management.get()
+
+ if self.bypass_unsubscribe_management is not None:
+ mail_settings[
+ "bypass_unsubscribe_management"] = self.bypass_unsubscribe_management.get()
+
+ if self.footer_settings is not None:
+ mail_settings["footer"] = self.footer_settings.get()
+
+ if self.sandbox_mode is not None:
+ mail_settings["sandbox_mode"] = self.sandbox_mode.get()
+
+ if self.spam_check is not None:
+ mail_settings["spam_check"] = self.spam_check.get()
+ return mail_settings