code: def run_filter_query(self, resource_name, filter_clause):
          
          url = self.base_url + "/" + resource_name
          params = {"filter":json.dumps(filter_clause)}
  
          r = requests.get(url, headers=self.headers, params=params)
          logger.debug("requests.get result r.status_code:  {}".format(r.status_code))
  
          ClueApiClient._check_request_response(r)
  
          return r.json()
docs: run a query (get) against the CLUE api, using the API and user key fields of self and the fitler_clause provided
  
          Args:
              resource_name: str - name of the resource / collection to query - e.g. genes, perts, cells etc.
              filter_clause: dictionary - contains filter to pass to API to; uses loopback specification
  
          Returns: list of dictionaries containing the results of the query