code: def funnel(self, steps, timeframe=None, timezone=None, max_age=None, all_keys=False):
          
          params = self.get_params(
              steps=steps,
              timeframe=timeframe,
              timezone=timezone,
              max_age=max_age,
          )
  
          return self.api.query("funnel", params, all_keys=all_keys)
docs: Performs a Funnel query
  
          Returns an object containing the results for each step of the funnel.
  
          :param steps: array of dictionaries, one for each step. example:
          [{"event_collection":"signup","actor_property":"user.id"},
          {"event_collection":"purchase","actor_property:"user.id"}]
          :param timeframe: string or dict, the timeframe in which the events
          happened example: "previous_7_days"
          :param timezone: int, the timezone you'd like to use for the timeframe
          and interval in seconds
          :param max_age: an integer, greater than 30 seconds, the maximum 'staleness' you're
          willing to trade for increased query performance, in seconds
          :all_keys: set to true to return all keys on response (i.e. "result", "actors", "steps")