about summary refs log tree commit diff
path: root/.venv/lib/python3.12/site-packages/mailersend/sms_inbounds
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/mailersend/sms_inbounds')
-rw-r--r--.venv/lib/python3.12/site-packages/mailersend/sms_inbounds/__init__.py134
1 files changed, 134 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/mailersend/sms_inbounds/__init__.py b/.venv/lib/python3.12/site-packages/mailersend/sms_inbounds/__init__.py
new file mode 100644
index 00000000..2ac3a663
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/mailersend/sms_inbounds/__init__.py
@@ -0,0 +1,134 @@
+"""
+Handles /sms-inbounds endpoint
+"""
+
+import requests
+from mailersend.base import base
+
+
+class NewSmsInbounds(base.NewAPIClient):
+    """
+    Instantiates the /sms-inbounds endpoint object
+    """
+
+    # you shall not
+    pass
+
+    def get_inbound_routes(self, sms_number_id=None, enabled=True, page=1, limit=25):
+        """
+        Get a list of SMS inbound routes.
+
+        @params:
+          sms_number_id (string)
+          enabled (bool)
+          page (int)
+          limit (int)
+        """
+
+        passed_arguments = locals()
+        query_params = {}
+
+        for key, value in passed_arguments.items():
+            if key != "self":
+                if key == "enabled":
+                    query_params[key] = int(value)
+                else:
+                    query_params[key] = value
+
+        request = requests.get(
+            f"{self.api_base}/sms-inbounds",
+            headers=self.headers_default,
+            params=query_params,
+        )
+
+        return f"{request.status_code}\n{request.text}"
+
+    def get_inbound_route(self, sms_inbound_id):
+        """
+        Get a single SMS inbound route.
+
+        @params:
+          sms_inbound_id (string)
+        """
+
+        request = requests.get(
+            f"{self.api_base}/sms-inbounds/{sms_inbound_id}",
+            headers=self.headers_default,
+        )
+
+        return f"{request.status_code}\n{request.text}"
+
+    def create_inbound_route(
+        self, sms_number_id, name, forward_url, filter={}, enabled=True
+    ):
+        """
+        Add an SMS inbound route.
+
+        @params:
+          sms_number_id (string)
+          name (string)
+          forward_url (string)
+          filter (object)
+          enabled (bool)
+        """
+
+        data = {
+            "sms_number_id": sms_number_id,
+            "name": name,
+            "forward_url": forward_url,
+            "filter": filter,
+            "enabled": int(enabled),
+        }
+
+        request = requests.post(
+            f"{self.api_base}/sms-inbounds", headers=self.headers_default, json=data
+        )
+
+        return f"{request.status_code}\n{request.text}"
+
+    def update_inbound_route(
+        self, sms_inbound_id, name=None, forward_url=None, filter=None, enabled=None
+    ):
+        """
+        Update an inbound route.
+
+        @params:
+          sms_inbound_id (string)
+          name (string)
+          forward_url (string)
+          filter (object)
+          enabled (bool)
+        """
+
+        passed_arguments = locals()
+        data = {}
+
+        for key, value in passed_arguments.items():
+            if key != "self" and key != "sms_inbound_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-inbounds/{sms_inbound_id}",
+            headers=self.headers_default,
+            json=data,
+        )
+
+        return f"{request.status_code}\n{request.text}"
+
+    def delete_inbound_route(self, sms_inbound_id):
+        """
+        Delete an SMS inbound route.
+
+        @params:
+          sms_inbound_id (string)
+        """
+
+        request = requests.delete(
+            f"{self.api_base}/sms-inbounds/{sms_inbound_id}",
+            headers=self.headers_default,
+        )
+
+        return f"{request.status_code}\n{request.text}"