diff --git a/pipedrive/client.py b/pipedrive/client.py index 0b672e7..10b02c4 100644 --- a/pipedrive/client.py +++ b/pipedrive/client.py @@ -59,9 +59,7 @@ def parse_response(self, response): :param response: :return: """ - if response.status_code == 204 or response.status_code == 201: - return True - elif response.status_code == 400: + if response.status_code == 400: raise Exception( "The URL {0} retrieved an {1} error. Please check your request body and try again.\nRaw message: {2}".format( response.url, response.status_code, response.text)) @@ -339,10 +337,10 @@ def get_persons(self, person_id=None, **kwargs): url = "persons" return self._get(url, **kwargs) - def get_persons_by_name(self, params=None): - if params is not None: + def get_persons_by_name(self, **kwargs): + if kwargs is not None: url = "persons/find" - return self._get(url, params=params) + return self._get(url, **kwargs) def create_person(self, **kwargs): if kwargs is not None: @@ -464,3 +462,12 @@ def get_users(self, user_id=None, **kwargs): def get_me(self, **kwargs): url = "users/me" return self._get(url, **kwargs) + + # Stages section, see the api documentation: https://developers.pipedrive.com/docs/api/v1/#!/Stages + def get_stages(self, stage_id=None, **kwargs): + if stage_id is not None: + url = "stages/{}".format(stage_id) + else: + url = "stages" + + return self._get(url, **kwargs)