docs: def request(func=None, timeout=600):
      """
      use to request an api call from a specific endpoint
      """
      if func is None:
          return partial(request, timeout=timeout)
  
      @wraps(func)
      def wrapper(self, *args, **kwargs):
          params = func(self, *args, **kwargs)
          self = params.pop('self', None)
          entity = params.pop('entity', None)
          app_name = params.pop('app_name', None)
          request_id = unique_hex()
          params['request_id'] = request_id
          future = self._send_request(app_name, endpoint=func.__name__, entity=entity, params=params, timeout=timeout)
          return future
  
      wrapper.is_request = True
      return wrapper