aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/mailersend/emails
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/mailersend/emails
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are hereHEADmaster
Diffstat (limited to '.venv/lib/python3.12/site-packages/mailersend/emails')
-rw-r--r--.venv/lib/python3.12/site-packages/mailersend/emails/__init__.py137
1 files changed, 137 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/mailersend/emails/__init__.py b/.venv/lib/python3.12/site-packages/mailersend/emails/__init__.py
new file mode 100644
index 00000000..c34f30d2
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/mailersend/emails/__init__.py
@@ -0,0 +1,137 @@
+"""
+Handles /email endpoint
+Doc: https://developers.mailersend.com/api/v1/email.html
+"""
+
+import requests
+from mailersend.base import base
+
+
+class NewEmail(base.NewAPIClient):
+ """
+ Send an e-mail
+ """
+
+ pass
+
+ def set_mail_from(self, mail_from, message):
+ """
+ Appends the 'from' part on an e-mail
+ """
+ message["from"] = mail_from
+
+ def set_mail_to(self, mail_to, message):
+ """
+ Appends the 'to' part on an e-mail
+ """
+ message["to"] = mail_to
+
+ def set_subject(self, subject, message):
+ """
+ Appends the 'subject' part on an e-mail
+ """
+ message["subject"] = subject
+
+ def set_html_content(self, content, message):
+ """
+ Appends the HTML content of an e-mail
+ """
+ message["html"] = content
+
+ def set_plaintext_content(self, text, message):
+ """
+ Appends the plaintext content of an e-mail
+ """
+ message["text"] = text
+
+ def set_template(self, template_id, message):
+ """
+ Appends the 'template_id' part on an e-mail
+ """
+ message["template_id"] = template_id
+
+ def set_personalization(self, personalization, message):
+ """
+ Handles advanced personalization
+ """
+ message["personalization"] = personalization
+
+ def set_cc_recipients(self, cc_recipient, message):
+ """
+ Appends the 'cc' part on an e-mail
+ """
+ message["cc"] = cc_recipient
+
+ def set_bcc_recipients(self, bcc_recipient, message):
+ """
+ Appends the 'bcc' part on an e-mail
+ """
+ message["bcc"] = bcc_recipient
+
+ def set_tags(self, tags, message):
+ """
+ Handles e-mail tags
+ """
+ message["tags"] = tags
+
+ def set_attachments(self, attachments, message):
+ """
+ Appends an attachment on an e-mail
+ """
+ message["attachments"] = attachments
+
+ def set_reply_to(self, reply_to, message):
+ """
+ Appends 'reply to' on an e-mail
+ """
+ message["reply_to"] = reply_to
+
+ def set_in_reply_to(self, in_reply_to, message):
+ """
+ Appends 'in reply to' on an e-mail
+ """
+ message["in_reply_to"] = in_reply_to
+
+ def set_send_at(self, send_at, message):
+ """
+ Sets the 'send_at' parameter for scheduled messages
+ """
+ message["send_at"] = send_at
+
+ def send(self, message):
+ """
+ Handles e-mail sending
+
+ @params:
+ message (dict): A dict containing required parameters for mail sending
+ """
+
+ request = requests.post(
+ f"{self.api_base}/email", headers=self.headers_default, json=message
+ )
+ return f"{request.status_code}\n{request.text}"
+
+ def get_bulk_status_by_id(self, bulk_email_id):
+ """
+ Returns a JSON response from the MailerSend API
+ """
+
+ request = requests.get(
+ f"{self.api_base}/bulk-email/{bulk_email_id}", headers=self.headers_default
+ )
+ return request.text
+
+ def send_bulk(self, message_list):
+ """
+ Handles bulk e-mail sending
+
+ @params:
+ message_list (list): A list containing e-mail dicts
+ """
+
+ request = requests.post(
+ f"{self.api_base}/bulk-email",
+ headers=self.headers_default,
+ json=message_list,
+ )
+ return f"{request.status_code}\n{request.text}"