aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py')
-rw-r--r--.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py58
1 files changed, 58 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py b/.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py
new file mode 100644
index 00000000..912d8336
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py
@@ -0,0 +1,58 @@
+"""
+This library allows you to quickly and easily use the Twilio SendGrid Web API v3 via Python.
+
+For more information on this library, see the README on GitHub.
+ http://github.com/sendgrid/sendgrid-python
+For more information on the Twilio SendGrid v3 API, see the v3 docs:
+ http://sendgrid.com/docs/API_Reference/api_v3.html
+For the user guide, code examples, and more, visit the main docs page:
+ http://sendgrid.com/docs/index.html
+
+This file provides the Twilio SendGrid API Client.
+"""
+
+import os
+
+from .base_interface import BaseInterface
+
+
+class SendGridAPIClient(BaseInterface):
+ """The Twilio SendGrid API Client.
+
+ Use this object to interact with the v3 API. For example:
+ mail_client = sendgrid.SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
+ ...
+ mail = Mail(from_email, subject, to_email, content)
+ response = mail_client.send(mail)
+
+ For examples and detailed use instructions, see
+ https://github.com/sendgrid/sendgrid-python
+ """
+
+ def __init__(
+ self,
+ api_key=None,
+ host='https://api.sendgrid.com',
+ impersonate_subuser=None):
+ """
+ Construct the Twilio SendGrid v3 API object.
+ Note that the underlying client is being set up during initialization,
+ therefore changing attributes in runtime will not affect HTTP client
+ behaviour.
+
+ :param api_key: Twilio SendGrid API key to use. If not provided, value
+ will be read from environment variable "SENDGRID_API_KEY"
+ :type api_key: string
+ :param impersonate_subuser: the subuser to impersonate. Will be passed
+ by "On-Behalf-Of" header by underlying
+ client. See
+ https://sendgrid.com/docs/User_Guide/Settings/subusers.html
+ for more details
+ :type impersonate_subuser: string
+ :param host: base URL for API calls
+ :type host: string
+ """
+ self.api_key = api_key or os.environ.get('SENDGRID_API_KEY')
+ auth = 'Bearer {}'.format(self.api_key)
+
+ super(SendGridAPIClient, self).__init__(auth, host, impersonate_subuser)