Select how you'd like to query our nationwide dataset using one of our supported geo-types
"city" [string] + "state" [string]
- "city" requires "state" to also be provided
{
"size": 10,
"absentee_owner": true,
"city": "Richmond",
"state": "VA"
}"state" [string]
- MUST be a 2 digit state code, all caps
- some states are too large to fully paginate through past the 500,000 cap without at least a few filters being applied
- some exceptions exist like assumables, foreclosures, and judgments where it makes sense to filter at the state level
{
"size": 10,
"absentee_owner": true,
"state": "VA"
}"county" [string] + "state"
"county" requires "state" to also be provide
{
"size": 10,
"absentee_owner": true,
"county": "Henrico",
"state": "VA"
}"zip" [string] or [array]
- no "state" is required
{
"zip": "22205",
"absentee_owner": true
}
or
{
"zip": ["22205", "23857", "95687", "20008"],
"absentee_owner": true
}Support Multiple Geos in One Query with Compound Queries
- stack multiple cities or counties
- mix and match different types of geos together
{
"absentee_owner": true,
"and": [ { "or": [ { "city": "Richmond", "state": "VA" }, { "zip": "22205" }, { "county": "Brunswick", "state": "VA" } ] } ]
}Search Radius search
There are only a few key components to performing your first Property Search based on Current Location or some other arbitrary geo-point in the US. For best results, please make sure any latitudes or longitudes are at least 6 digits of precision (aka Zip9 Precision)
You'll need:
- "latitude" (double/float or string representation thereof)
- "longitude" (double/float or string representation thereof)
- "radius" (between 0.1-100 [in miles])
- "address" or "id" are also allowed to be passed instead of "latitude" / "longitude" along with "radius" as the center point of your search
Code sample for query "Find properties within 5 miles of location point provided that have 2-4 beds and 2-5 baths"
{
"size": 10,
"latitude": "-86.32762085355883",
"longitude": "35.42300740560803",
"radius": 5,
"beds_min": 2,
"beds_max": 4,
"baths_min": 2,
"baths_max": 5
}"polygon" search
All you need is a list of latitude and longitude points (aka coordinates) to get started.
For the polygon geo-points, you can use string or double (floats also accepted) representations for the actual point values. Integers will not be accepted, so make sure to include at least 6 digits of precision.
{
"size": 100,
"count": false,
"polygon": [
{
"lon": "-86.32762085355883",
"lat": "35.42300740560803"
},
{
"lon": "-86.43359069901402",
"lat": "35.19184584103132"
},
{
"lon": "-86.0572016901352",
"lat": "35.15490990082178"
},
{
"lon": "-86.00921468169653",
"lat": "35.45088715765438"
},
{
"lon": "-86.32762085355883",
"lat": "35.42300740560803"
}
]
}"multi_polygon"
For multi-polygon searches, the input looks similar, but it consists of an array of polygon objects, instead of an array of geo-point objects.
{
"size": 100,
"count": false,
"multi_polygon": [
[
{
"lon": "-86.32762085355883",
"lat": "35.42300740560803"
},
{
"lon": "-86.43359069901402",
"lat": "35.19184584103132"
},
{
"lon": "-86.0572016901352",
"lat": "35.15490990082178"
},
{
"lon": "-86.00921468169653",
"lat": "35.45088715765438"
},
{
"lon": "-86.32762085355883",
"lat": "35.42300740560803"
}
],
[
{
"lon": "-87.32762085355883",
"lat": "36.42300740560803"
},
{
"lon": "-87.43359069901402",
"lat": "36.19184584103132"
},
{
"lon": "-87.0572016901352",
"lat": "36.15490990082178"
},
{
"lon": "-87.00921468169653",
"lat": "36.45088715765438"
},
{
"lon": "-87.32762085355883",
"lat": "36.42300740560803"
}
]
]
}