aboutsummaryrefslogtreecommitdiff
path: root/phpipam_api/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'phpipam_api/__init__.py')
-rwxr-xr-xphpipam_api/__init__.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/phpipam_api/__init__.py b/phpipam_api/__init__.py
new file mode 100755
index 0000000..1dc065f
--- /dev/null
+++ b/phpipam_api/__init__.py
@@ -0,0 +1,40 @@
+#
+# phpipam/__init__.py
+# (c) 2021 Jonas Gunz <himself@jonasgunz.de>
+# License: MIT
+#
+from .backend import PhpipamBackend
+from .resources import PhpipamResource
+
+class PhpipamAPI:
+ """
+ phpIPAM API Implementation
+
+ Attributes
+ ----------
+ sections
+ subnets
+ addresses
+ devices
+
+ https://phpipam.net/api-documentation/
+ """
+
+ def __init__(self, api_url, app_id, api_user, api_password):
+ """
+ Parameters
+ ----------
+ api_url : str
+ URL of phpIPAM instance. Example: https://phpipam.example.com/
+ app_id : str
+ AppID configrued in API settings
+ api_user : str
+ username, leave empty to use static token authentification
+ api_password : str
+ password or static authentification token
+ """
+
+ self._backend = PhpipamBackend(api_url, app_id, api_user, api_password)
+
+ def __getattr__(self, item):
+ return PhpipamResource(self._backend, item)