Redfin Search
Search Redfin homes for sale or recently sold.
GET/api/v1/redfin/search
Costs 1 credit per request; failed requests are refunded. Authentication, the search_metadata envelope and error codes are the same as for every endpoint (see the API reference). Try it in the playground.
Parameters
Request parameters
Search Redfin homes for sale or recently sold.
| Parameter | Type | Description |
|---|---|---|
min_price | integer | Minimum listing price in US dollars.Minimum: 0. |
max_price | integer | Maximum listing price in US dollars.Minimum: 0. |
min_beds | integer | Minimum number of bedrooms.Range: 0 to 20. |
max_beds | integer | Maximum number of bedrooms.Range: 0 to 20. |
min_baths | number | Minimum number of bathrooms.Range: 0 to 20. |
min_sqft | integer | Minimum interior area in square feet.Minimum: 0. |
max_sqft | integer | Maximum interior area in square feet.Minimum: 0. |
url | string | Redfin city, ZIP, county or neighborhood search URL. Existing URL filters are retained unless overridden.Up to 2,048 characters.Supply one location: a region URL, region_id with region_type, or map_bounds. |
region_id | integer | Redfin region identifier; requires region_type.Minimum: 0. |
region_type | "1" | "2" | "5" | "6" | "11" | Region kind: 1 neighborhood, 2 ZIP region, 5 county, 6 city, 11 state.A ZIP region identifier differs from the ZIP code. Use a Redfin ZIP search URL if the region identifier is unknown. |
map_bounds | string | Map rectangle as north,east,south,west. |
status | "for_sale" | "sold" | Listing status. Defaults to for_sale when no URL is supplied. |
sold_within_days | integer | Sold listings from the last N days; requires status=sold. Defaults to 180 for sold searches.Range: 1 to 365. |
property_type | "house" | "condo" | "townhouse" | "multi_family" | "land" | "other" | "manufactured" | "co_op" | Restrict results to one property type. |
sort | "recommended" | "newest" | "price_asc" | "price_desc" | "sqft" | Result ordering. Defaults to recommended when no URL is supplied. |
limit | integer | Maximum homes returned. Narrow the region or map bounds when results reach this limit.Default: 100.Range: 1 to 350.The response does not advertise pagination or a total count. If search_information.possibly_truncated is true, narrow the location or filters. |
Response
A JSON object with search_metadata (request id, credits used and remaining) and the result data: properties. Groups and fields depend on the content of each page, so treat every field as optional.
Examples
cURL
curl "https://serpfast.com/api/v1/redfin/search?region_id=16163®ion_type=6&max_price=800000&min_beds=2&limit=5" \
-H "Authorization: Bearer $SERPFAST_KEY"Node.js 18+
const params = new URLSearchParams({
"region_id": 16163,
"region_type": 6,
"max_price": 800000,
"min_beds": 2,
"limit": 5
});
const res = await fetch(`https://serpfast.com/api/v1/redfin/search?${params}`, {
headers: { Authorization: `Bearer ${process.env.SERPFAST_KEY}` },
});
const data = await res.json();
console.log(data);Python
import os, requests
params = {
"region_id": 16163,
"region_type": 6,
"max_price": 800000,
"min_beds": 2,
"limit": 5
}
res = requests.get(
"https://serpfast.com/api/v1/redfin/search",
params=params,
headers={"Authorization": f"Bearer {os.environ['SERPFAST_KEY']}"},
timeout=120,
)
print(res.json())