diff --git a/src/api_client/client.py b/src/api_client/client.py index 7a2b960..b7a1659 100644 --- a/src/api_client/client.py +++ b/src/api_client/client.py @@ -21,14 +21,32 @@ class BaseAPIClient(ABC): self._session = requests.Session() self._logger = get_logger("APIClient") + def get(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("GET", endpoint, params=params, **kwargs) + def post(self, endpoint: str, *, json: Any = None, data: Any = None, **kwargs: Any) -> requests.Response: return self._request("POST", endpoint, json=json, data=data, **kwargs) def put(self, endpoint: str, *, json: Any = None, data: Any = None, **kwargs: Any) -> requests.Response: return self._request("PUT", endpoint, json=json, data=data, **kwargs) - def get(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: - return self._request("GET", endpoint, params=params, **kwargs) + def patch(self, endpoint: str, *, json: Any = None, data: Any = None, **kwargs: Any) -> requests.Response: + return self._request("PATCH", endpoint, json=json, data=data, **kwargs) + + def delete(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("DELETE", endpoint, params=params, **kwargs) + + def head(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("HEAD", endpoint, params=params, **kwargs) + + def options(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("OPTIONS", endpoint, params=params, **kwargs) + + def trace(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("TRACE", endpoint, params=params, **kwargs) + + def connect(self, endpoint: str, *, params: Any = None, **kwargs: Any) -> requests.Response: + return self._request("CONNECT", endpoint, params=params, **kwargs) def _make_full_url(self, endpoint: str) -> str: return f"{self._base_url}{endpoint}"