docs: def errorhandle(self, resp):            
          """Parse API error responses and raise appropriate exceptions."""
          if self.format == 'json':
              parsed = xmltodict.parse(resp)
              errors = parsed[self.RESPONSE_TOKEN][self.ERROR_TOKEN]
              # Create list of errors if more than one error response is given
              if type(errors) is list and len(errors) > 1:
                  messages = ", ".join([" ".join(["{}: {}".format(k,v) for k, v in e.items()]) for e in errors])
              else:
                  overlimit = any('transaction limit' in msg.lower() for msg in errors.values())
                  if overlimit:
                      raise APILimitExceeded("This API key has used up its daily quota of calls.")
                  else:    
                      messages = " ".join(["{}: {}".format(k,v) for k, v in errors.items()])    
          elif self.format == 'xml':
              import xml.etree.ElementTree as ET
              errors = ET.fromstring(resp).findall(self.ERROR_TOKEN)
              messages = ", ".join(err.find('msg').text for err in errors)
          else:
              raise ValueError("Invalid API response format specified: {}." % self.format)        
          
          raise BustimeError("API returned: {}".format(messages))