API Documentation
Programmatic access to U.S. foreclosure and REO property data from 23 sources across all 50 states. Search, filter, paginate, and retrieve listings via a simple REST API.
https://api.foreclosuredatahub.com/api/v1Authentication
Authenticate every request with your API key.
Include your API key in the x-api-key header on every request. Generate keys from your dashboard.
curl -H "x-api-key: fdh_ak_your_key_here" \
https://api.foreclosuredatahub.com/api/v1/sourcesAPI access requires a monthly or yearly subscription. Monthly and yearly trials include 150 total API requests; weekly plans do not include API access.
Rate Limits
Limits are enforced per API key. Exceeding returns 429 with a Retry-After header.
Response Format
All responses use a consistent JSON envelope.
{
"data": [ ... ],
"meta": {
"total": 150,
"page": 1,
"per_page": 25,
"total_pages": 6
}
}{
"error": "Description of what went wrong"
}Endpoints
All endpoints use GET requests and return JSON.
List all available data sources with their supported filters.
Request
curl -H "x-api-key: fdh_ak_your_key_here" \
https://api.foreclosuredatahub.com/api/v1/sourcesResponse
{
"data": [
{
"id": "source_a",
"name": "County Records Feed A",
"filters": { "county": true, "state": true, "sale_date": true, "owner_name": true, "est_value": true }
},
...
]
}Search across all data sources simultaneously. Returns up to 100 results per source, grouped by source. At least one location filter (county, state, zip, or address) is required.
Parameters
countystringOptionalstatestringOptionalzipstringOptionaladdressstringOptionalsale_date_startdateOptionalsale_date_enddateOptionalowner_namestringOptionalest_value_minnumberOptionalest_value_maxnumberOptionalRequest
curl -H "x-api-key: fdh_ak_..." \
"https://api.foreclosuredatahub.com/api/v1/properties/search?state=FL&county=Miami-Dade"Response
{
"data": {
"results": [
{
"source": "source_a",
"source_name": "County Records Feed A",
"records": [ { ... }, ... ],
"count": 45,
"has_more": false
},
...
]
},
"meta": { "total": 312 }
}Search with mode=unified to get normalized, paginated results across all sources in a single flat list. Each record includes standardized fields (address, city, state, zip, county, sale_date, bid_amount, owner name, etc.) with a source field indicating origin.
Parameters
modestringRequiredcountystringOptionalstatestringOptionalzipstringOptionaladdressstringOptionalsale_date_startdateOptionalsale_date_enddateOptionalowner_namestringOptionalest_value_minnumberOptionalest_value_maxnumberOptionalpageintegerOptionalpage_sizeintegerOptionalRequest
curl -H "x-api-key: fdh_ak_..." \
"https://api.foreclosuredatahub.com/api/v1/properties/search?mode=unified&state=FL&page=1&page_size=25"Response
{
"data": {
"records": [
{
"source": "auction",
"address": "123 Main St",
"city": "Miami",
"state": "FL",
"zip": "33101",
"county": "Miami-Dade",
"sale_date": "2026-04-15",
"bid_amount": "250000",
"owner_first_name": "John",
"owner_last_name": "Doe",
...
},
...
]
},
"meta": {
"total": 1250,
"page": 1,
"per_page": 25,
"total_pages": 50
}
}Fetch paginated data from a single source. Max 100 records per page.
Parameters
sourcestringRequiredpageintegerOptionalper_pageintegerOptionalstart_datedateOptionalend_datedateOptionalcountystringOptionalstatestringOptionalowner_namestringOptionalest_value_minnumberOptionalest_value_maxnumberOptionalRequest
curl -H "x-api-key: fdh_ak_..." \
"https://api.foreclosuredatahub.com/api/v1/properties/data?source=auction&state=TX&per_page=50"Response
{
"data": [
{ "Address": "123 Main St", "County": "Harris", ... },
...
],
"meta": {
"total": 1250,
"page": 1,
"per_page": 50,
"total_pages": 25
}
}Get record counts per data source for a date or date range.
Parameters
datedateOptionalstart_datedateOptionalend_datedateOptionalRequest
curl -H "x-api-key: fdh_ak_..." \
"https://api.foreclosuredatahub.com/api/v1/properties/counts?start_date=2026-03-15&end_date=2026-03-22"Response
{
"data": {
"start_date": "2026-03-15",
"end_date": "2026-03-22",
"sources": [
{
"name": "source_a",
"schema": "source_a",
"displayName": "County Records Feed A",
"count": 523
},
...
],
"total": 4821
}
}Error Codes
Standard HTTP status codes with descriptive error messages.
400401403404429500Ready to get started?
Generate your API key from the dashboard and start building in minutes.