@@ -144,7 +144,7 @@ def _build_search_criteria(
144144 self ,
145145 parcl_ids : list [int ] | None = None ,
146146 parcl_property_ids : list [int ] | None = None ,
147- location : dict [str , float ] | None = None ,
147+ geo_coordinates : dict [str , float ] | None = None ,
148148 ) -> dict [str , Any ]:
149149 """Build and validate search criteria."""
150150 data = {}
@@ -155,8 +155,8 @@ def _build_search_criteria(
155155 if parcl_property_ids :
156156 data ["parcl_property_ids" ] = parcl_property_ids
157157
158- if location and all ( k in location for k in [ "latitude" , "longitude" , "radius" ]) :
159- data . update ( location )
158+ if geo_coordinates :
159+ data [ "geo_coordinates" ] = geo_coordinates
160160
161161 return data
162162
@@ -265,9 +265,7 @@ def retrieve(
265265 self ,
266266 parcl_ids : list [int ] | None = None ,
267267 parcl_property_ids : list [int ] | None = None ,
268- latitude : float | None = None ,
269- longitude : float | None = None ,
270- radius : float | None = None ,
268+ geo_coordinates : dict [str , float ] | None = None ,
271269 property_types : list [str ] | None = None ,
272270 min_beds : int | None = None ,
273271 max_beds : int | None = None ,
@@ -300,9 +298,8 @@ def retrieve(
300298 Args:
301299 parcl_ids: List of parcl_ids to filter by.
302300 parcl_property_ids: List of parcl_property_ids to filter by.
303- latitude: Latitude to filter by.
304- longitude: Longitude to filter by.
305- radius: Radius to filter by.
301+ geo_coordinates: Dictionary containing latitude, longitude, and radius (in miles)
302+ to filter by.
306303 property_types: List of property types to filter by.
307304 min_beds: Minimum number of bedrooms to filter by.
308305 max_beds: Maximum number of bedrooms to filter by.
@@ -331,16 +328,11 @@ def retrieve(
331328 Returns:
332329 A pandas DataFrame containing the property data.
333330 """
334- # Build location dict if latitude, longitude and radius are provided
335- location = None
336- if all (v is not None for v in [latitude , longitude , radius ]):
337- location = {"latitude" : latitude , "longitude" : longitude , "radius" : radius }
338-
339331 # Build search criteria
340332 data = self ._build_search_criteria (
341333 parcl_ids = parcl_ids ,
342334 parcl_property_ids = parcl_property_ids ,
343- location = location ,
335+ geo_coordinates = geo_coordinates ,
344336 )
345337
346338 # Build filters using all provided parameters
@@ -350,12 +342,9 @@ def retrieve(
350342 "self" ,
351343 "parcl_ids" ,
352344 "parcl_property_ids" ,
353- "latitude" ,
354- "longitude" ,
355- "radius" ,
356345 "params" ,
357346 "data" ,
358- "location " ,
347+ "geo_coordinates " ,
359348 ]:
360349 kwargs .pop (key , None )
361350
0 commit comments