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/mailersend/sms_webhooks | |
parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
download | gn-ai-master.tar.gz |
Diffstat (limited to '.venv/lib/python3.12/site-packages/mailersend/sms_webhooks')
-rw-r--r-- | .venv/lib/python3.12/site-packages/mailersend/sms_webhooks/__init__.py | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/mailersend/sms_webhooks/__init__.py b/.venv/lib/python3.12/site-packages/mailersend/sms_webhooks/__init__.py new file mode 100644 index 00000000..21070536 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/mailersend/sms_webhooks/__init__.py @@ -0,0 +1,122 @@ +""" +Handles /sms-webhooks endpoint +""" + +import requests +from mailersend.base import base + + +class NewSmsWebhooks(base.NewAPIClient): + """ + Instantiates the /sms-webhooks endpoint object + """ + + # you shall not + pass + + def get_webhooks(self, sms_number_id): + """ + Get a list of SMS webhooks. + + @params: + sms_number_id (string) + """ + + passed_arguments = locals() + query_params = {"sms_number_id": sms_number_id} + + request = requests.get( + f"{self.api_base}/sms-webhooks", + headers=self.headers_default, + params=query_params, + ) + + return f"{request.status_code}\n{request.text}" + + def get_webhook(self, sms_webhook_id): + """ + Get a single SMS webhook. + + @params: + sms_webhook_id (string) + """ + + request = requests.get( + f"{self.api_base}/sms-webhooks/{sms_webhook_id}", + headers=self.headers_default, + ) + + return f"{request.status_code}\n{request.text}" + + def create_webhook(self, url, name, events, sms_number_id, enabled=True): + """ + Create an SMS webhook. + + @params: + url (string) + name (string) + events (dict) + enabled (bool) + sms_number_id (string) + """ + + data = { + "url": url, + "name": name, + "events": events, + "sms_number_id": sms_number_id, + "enabled": int(enabled), + } + + request = requests.post( + f"{self.api_base}/sms-webhooks", headers=self.headers_default, json=data + ) + + return f"{request.status_code}\n{request.text}" + + def update_webhook( + self, sms_webhook_id, url=None, name=None, events=None, enabled=None + ): + """ + Update a single SMS Webhook. + + @params: + sms_webhook_id (string) + url (string) + name (string) + events (dict) + enabled (bool) + """ + + passed_arguments = locals() + data = {} + + for key, value in passed_arguments.items(): + if key != "self" and key != "sms_webhook_id" and value is not None: + if key == "enabled": + data[key] = int(value) + else: + data[key] = value + + request = requests.put( + f"{self.api_base}/sms-webhooks/{sms_webhook_id}", + headers=self.headers_default, + json=data, + ) + + return f"{request.status_code}\n{request.text}" + + def delete_webhook(self, sms_webhook_id): + """ + Delete an SMS webhook. + + @params: + sms_webhook_id (string) + """ + + request = requests.delete( + f"{self.api_base}/sms-webhooks/{sms_webhook_id}", + headers=self.headers_default, + ) + + return f"{request.status_code}\n{request.text}" |