def METHOD_NAME(self, identifier, **kwargs):
    query_params = []
    url = f'{self.data}.geoJson'
    if self.filters is not None:
        LOGGER.debug(f'Setting filters ({self.filters})')
        query_params.append(self.filters)
    id_, obs_time = identifier.split('.')
    query_params.extend([
        f'time={obs_time}',
        f'{self.id_field}=%22{id_}%22'
    ])
    url = f'{url}?{"&".join(query_params)}'
    LOGGER.debug(f'Fetching data from {url}')
    response = requests.METHOD_NAME(url)
    LOGGER.debug(f'Response: {response}')
    data = response.json()
    LOGGER.debug(f'Data: {data}')
    if len(data['features']) < 1:
        msg = 'No features found'
        LOGGER.error(msg)
        raise ProviderNotFoundError(msg)
    LOGGER.debug('Truncating to first feature')
    data = data['features'][0]
    data['id'] = identifier
    return data