code: def do(self,
             resource,
             method,
             params=None,
             data=None,
             json=None,
             headers=None):
          
          uri = "{0}/{1}".format(self._api_base, resource)
          if not params:
              params = {}
          params.update({'token': self._token})
  
          req = Request(
              method=method,
              url=uri,
              params=params,
              headers=headers,
              data=data,
              json=json)
          s = Session()
          prepped = s.prepare_request(req)
          resp = s.send(prepped)
  
          return RTMResponse(resp)
docs: Does the request job
  
          Args:
              resource(str): resource uri(relative path)
              method(str): HTTP method
              params(dict): uri queries
              data(dict): HTTP body(form)
              json(dict): HTTP body(json)
              headers(dict): HTTP headers
  
          Returns:
              RTMResponse