Redfin · Schema
Redfin Property
A real estate property listing as represented in the Redfin Stingray API, including address, price, physical characteristics, and listing metadata.
CSV ExportGISHome ValuesHousing MarketListingsProperty DataReal Estate
Properties
| Name | Type | Description |
|---|---|---|
| propertyId | integer | Unique Redfin property identifier. |
| listingId | integer | Unique Redfin listing identifier. A property may have multiple listings over time. |
| mlsId | string | MLS listing identifier assigned by the local Multiple Listing Service. |
| address | object | |
| price | number | Current listing or last sale price in USD. |
| beds | integer | Number of bedrooms. |
| baths | number | Number of bathrooms, may include half-baths as 0.5. |
| sqFt | integer | Approximate living area in square feet. |
| lotSize | integer | Lot size in square feet. |
| yearBuilt | integer | Year the property was constructed. |
| stories | integer | Number of stories or levels in the building. |
| propertyType | string | Type of property. |
| propertyTypeCode | integer | Numeric property type code (1=house, 2=condo, 3=townhouse, 4=multi-family, 5=land, 6=other). |
| listingStatus | string | Current listing status. |
| listingType | string | Type of listing source (e.g., MLS, FSBO). |
| daysOnMarket | integer | Number of days the property has been actively listed. |
| latitude | number | Latitude coordinate of the property. |
| longitude | number | Longitude coordinate of the property. |
| url | string | Relative URL path to the property listing on Redfin. |
| redfinEstimate | number | Redfin automated valuation model (AVM) estimate in USD. |
| hasGarage | boolean | Whether the property has a garage. |
| hasBasement | boolean | Whether the property has a basement. |
| parkingSpaces | integer | Number of parking spaces. |
| hoaFee | number | Monthly HOA fee in USD, 0 if no HOA. |
| history | array | Historical events for the property including sales, price changes, and listing status changes. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://redfin.com/schemas/redfin/property.json",
"title": "Redfin Property",
"description": "A real estate property listing as represented in the Redfin Stingray API, including address, price, physical characteristics, and listing metadata.",
"type": "object",
"required": ["propertyId", "address"],
"properties": {
"propertyId": {
"type": "integer",
"description": "Unique Redfin property identifier."
},
"listingId": {
"type": "integer",
"description": "Unique Redfin listing identifier. A property may have multiple listings over time."
},
"mlsId": {
"type": "string",
"description": "MLS listing identifier assigned by the local Multiple Listing Service."
},
"address": {
"$ref": "#/$defs/Address"
},
"price": {
"type": "number",
"minimum": 0,
"description": "Current listing or last sale price in USD."
},
"beds": {
"type": "integer",
"minimum": 0,
"description": "Number of bedrooms."
},
"baths": {
"type": "number",
"minimum": 0,
"description": "Number of bathrooms, may include half-baths as 0.5."
},
"sqFt": {
"type": "integer",
"minimum": 0,
"description": "Approximate living area in square feet."
},
"lotSize": {
"type": "integer",
"minimum": 0,
"description": "Lot size in square feet."
},
"yearBuilt": {
"type": "integer",
"minimum": 1600,
"maximum": 2030,
"description": "Year the property was constructed."
},
"stories": {
"type": "integer",
"minimum": 1,
"description": "Number of stories or levels in the building."
},
"propertyType": {
"type": "string",
"enum": ["house", "condo", "townhouse", "multi-family", "land", "other"],
"description": "Type of property."
},
"propertyTypeCode": {
"type": "integer",
"enum": [1, 2, 3, 4, 5, 6],
"description": "Numeric property type code (1=house, 2=condo, 3=townhouse, 4=multi-family, 5=land, 6=other)."
},
"listingStatus": {
"type": "string",
"enum": ["active", "pending", "sold", "off-market", "contingent"],
"description": "Current listing status."
},
"listingType": {
"type": "string",
"description": "Type of listing source (e.g., MLS, FSBO)."
},
"daysOnMarket": {
"type": "integer",
"minimum": 0,
"description": "Number of days the property has been actively listed."
},
"latitude": {
"type": "number",
"minimum": -90,
"maximum": 90,
"description": "Latitude coordinate of the property."
},
"longitude": {
"type": "number",
"minimum": -180,
"maximum": 180,
"description": "Longitude coordinate of the property."
},
"url": {
"type": "string",
"description": "Relative URL path to the property listing on Redfin."
},
"redfinEstimate": {
"type": "number",
"minimum": 0,
"description": "Redfin automated valuation model (AVM) estimate in USD."
},
"hasGarage": {
"type": "boolean",
"description": "Whether the property has a garage."
},
"hasBasement": {
"type": "boolean",
"description": "Whether the property has a basement."
},
"parkingSpaces": {
"type": "integer",
"minimum": 0,
"description": "Number of parking spaces."
},
"hoaFee": {
"type": "number",
"minimum": 0,
"description": "Monthly HOA fee in USD, 0 if no HOA."
},
"history": {
"type": "array",
"description": "Historical events for the property including sales, price changes, and listing status changes.",
"items": {
"$ref": "#/$defs/PropertyHistoryEvent"
}
}
},
"$defs": {
"Address": {
"type": "object",
"description": "Physical address of a property.",
"required": ["streetAddress", "city", "state", "zip"],
"properties": {
"streetAddress": {
"type": "string",
"description": "Street number and name."
},
"city": {
"type": "string",
"description": "City name."
},
"state": {
"type": "string",
"minLength": 2,
"maxLength": 2,
"pattern": "^[A-Z]{2}$",
"description": "Two-letter US state abbreviation."
},
"zip": {
"type": "string",
"pattern": "^[0-9]{5}(-[0-9]{4})?$",
"description": "5-digit or 9-digit US ZIP code."
}
}
},
"PropertyHistoryEvent": {
"type": "object",
"description": "A historical event in a property's listing or sale history.",
"required": ["eventDate", "eventType"],
"properties": {
"eventDate": {
"type": "string",
"format": "date",
"description": "Date of the event."
},
"eventType": {
"type": "string",
"enum": ["Listed", "Sold", "PriceChange", "Pending", "Delisted", "Relisted"],
"description": "Type of historical event."
},
"price": {
"type": "number",
"minimum": 0,
"description": "Price associated with the event in USD."
},
"source": {
"type": "string",
"description": "Data source for the event record (e.g., MLS name)."
}
}
}
}
}