Files
synology-api/synology_api/base_api.py
2024-12-25 23:22:35 +01:00

38 lines
1.4 KiB
Python

from typing import Optional, Any
from . import auth as syn
class BaseApi(object):
def __init__(self,
ip_address: str,
port: str,
username: str,
password: str,
secure: bool = False,
cert_verify: bool = False,
dsm_version: int = 7,
debug: bool = True,
otp_code: Optional[str] = None,
device_id: Optional[str] = None,
device_name: Optional[str] = None,
application: str = 'Core',
) -> None:
self.application = application
self.session: syn.Authentication = syn.Authentication(ip_address, port, username, password, secure, cert_verify,
dsm_version, debug, otp_code, device_id, device_name)
self.session.login(self.application)
self.session.get_api_list(self.application)
self.session.get_api_list()
self.request_data: Any = self.session.request_data
self.batch_request = self.session.request_multi_datas
self.core_list: Any = self.session.app_api_list
self.gen_list: Any = self.session.full_api_list
self._sid: str = self.session.sid
self.base_url: str = self.session.base_url
def logout(self) -> None:
self.session.logout(self.application)
return