diff options
author | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
---|---|---|
committer | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
commit | 4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch) | |
tree | ee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py | |
parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
download | gn-ai-master.tar.gz |
Diffstat (limited to '.venv/lib/python3.12/site-packages/sendgrid/sendgrid.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/sendgrid/sendgrid.py | 58 |
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) |