diff --git a/intercom/lib/flat_store.py b/intercom/lib/flat_store.py index 1c330436..15624252 100644 --- a/intercom/lib/flat_store.py +++ b/intercom/lib/flat_store.py @@ -10,7 +10,7 @@ def __init__(self, *args, **kwargs): self.update(*args, **kwargs) def __setitem__(self, key, value): - if not ( + if value is not None and not ( isinstance(value, numbers.Real) or isinstance(value, six.string_types) ): diff --git a/intercom/request.py b/intercom/request.py index c19ccecf..026ddefa 100644 --- a/intercom/request.py +++ b/intercom/request.py @@ -43,9 +43,9 @@ def send_request_to_path(cls, method, url, auth, params=None): def parse_body(cls, resp): try: # use supplied encoding to decode the response content - decoded_body = resp.content.decode(resp.encoding) - if not decoded_body: # return early for empty responses (issue-72) + if not resp.content or resp.content == ' ': # return early for empty responses (issue-72) return + decoded_body = resp.content.decode(resp.encoding) body = json.loads(decoded_body) if body.get('type') == 'error.list': cls.raise_application_errors_on_failure(body, resp.status_code)