docs: def _response_good(self, respond):
          """check response
  
          Args:
              respond (str): HTTP response.
  
          Returns:
              bool: True if the response is good, else False.
  
          Raises:
              ApiError: response isn't formatted properly.
          """
          if respond.status_code != requests.codes.ok:
              log.warning('Got a {} code response to {}: {}'.format(
                  respond.status_code,
                  respond.url,
                  respond.text))
              if respond.status_code in self.errorsNotRetry:
                raise ApiError(usr_msg='Got a {} code response to {}: {}'.format(
                  respond.status_code,
                  respond.url,
                  respond.text))
              else:
                return self._parse_response(respond)
          try:
              if (str(respond.headers['content-type']).startswith("text/html;")):
                  self.result = respond.text
                  return True
              else:
                  self.result = respond.json()
          except (json.JSONDecodeError, ValueError):
              usr_msg = 'device server returned unexpected http response'
              dev_msg = usr_msg + ': ' + respond.text
              raise ApiError(usr_msg=usr_msg, dev_msg=dev_msg)
          if not isinstance(self.result, (list, dict)):
              msg = ('JSON not a list or dict: url: {0},'
                     'status: {1}, reason: {2}, text: {3}')
              raise ApiError(
                  usr_msg=msg.format(respond.url,
                                     respond.status_code,
                                     respond.reason, respond.text))
          if ('error' not in self.result or
                  ('status' not in self.result['error'] or
                   self.result['error']['status'] != 400)):
              return True
          else:
              log.warning("Got a 400 code JSON response to %s", respond.url)
              return False