code: def _build_params(self, location, provider_key, **kwargs):
          
          base_kwargs = {
              'q': location,
              'fuzzy': kwargs.get('fuzzy', 1.0),
              'username': provider_key,
              'maxRows': kwargs.get('maxRows', 1),
          }
          # check out for bbox in kwargs
          bbox = kwargs.pop('proximity', None)
          if bbox is not None:
              bbox = BBox.factory(bbox)
              base_kwargs.update(
                  {'east': bbox.east, 'west': bbox.west,
                   'north': bbox.north, 'south': bbox.south})
  
          # look out for valid extra kwargs
          supported_kwargs = set((
              'name', 'name_equals', 'name_startsWith', 'startRow',
              'country', 'countryBias', 'continentCode',
              'adminCode1', 'adminCode2', 'adminCode3', 'cities',
              'featureClass', 'featureCode',
              'lang', 'type', 'style',
              'isNameRequired', 'tag', 'operator', 'charset',
              'east', 'west', 'north', 'south',
              'orderby', 'inclBbox',
          ))
          found_kwargs = supported_kwargs & set(kwargs.keys())
          LOGGER.debug("Adding extra kwargs %s", found_kwargs)
  
          # update base kwargs with extra ones
          base_kwargs.update(dict(
              [(extra, kwargs[extra]) for extra in found_kwargs]
          ))
          return base_kwargs
docs: Will be overridden according to the targetted web service