code: def _query(self, url, **kwargs):
          
          parameters = YelpAPI._get_clean_parameters(kwargs)
          response = self._yelp_session.get(
              url,
              headers=self._headers,
              params=parameters,
              timeout=self._timeout_s,
          )
          response_json = response.json()  # shouldn't happen, but this will raise a ValueError if the response isn't JSON
  
          # Yelp can return one of many different API errors, so check for one of them.
          # The Yelp Fusion API does not yet have a complete list of errors, but this is on the TODO list; see
          # https://github.com/Yelp/yelp-fusion/issues/95 for more info.
          if 'error' in response_json:
              raise YelpAPI.YelpAPIError('{}: {}'.format(response_json['error']['code'],
                                                         response_json['error']['description']))
  
          # we got a good response, so return
          return response_json
docs: All query methods have the same logic, so don't repeat it! Query the URL, parse the response as JSON,
              and check for errors. If all goes well, return the parsed JSON.