Parcel-level and neighborhood-level probabilistic price forecasts. P10/P50/P90 distributions across one to five year horizons, with one endpoint and one address.
Tools, transport, prompts, and agent workflow notes.
Geo tables, RPC wrappers, and canonical column mappings.
Query variants, fallback logic, and evidence-backed implementation notes.
Try the API right now with the built-in demo key. No signup required.
curl -s -H "x-api-key: hc_demo_public_readonly" \ "https://homecastr.com/api/v1/forecast?address=123+Main+St+Houston+TX"
curl -s -H "x-api-key: hc_demo_public_readonly" \ "https://homecastr.com/api/v1/forecast?address=123%20Main%20St%20Houston%20TX"
All API requests require an API key passed via the x-api-key header.
| Key Type | Rate Limit | Use Case |
|---|---|---|
| hc_demo_public_readonly | 50 req/hour | Testing and evaluation |
| hc_* | Unlimited (fair use) | Production |
/api/v1/forecastForecast home values by address. Geocodes the address, maps to a target geography, and returns probabilistic forecasts with P10/P50/P90 bands.
| Name | Type | Required | Description |
|---|---|---|---|
| address | string | Yes | US street address (for example: '123 Main St Houston TX') |
| year | integer | No | Target forecast year. Default: 2030. Range: 2026-2030. |
curl -s -H "x-api-key: YOUR_API_KEY" \ "https://homecastr.com/api/v1/forecast?address=123+Main+St+Houston+TX&year=2028"
/api/v1/forecast/hexForecast by H3 cell ID. This is a compatibility route for callers that already know the H3 index of their target geography.
| Name | Type | Required | Description |
|---|---|---|---|
| h3_id | string | Yes | H3 cell ID at resolution 8 (for example: '882a100c65fffff') |
| year | integer | No | Target forecast year. Default: 2026. |
curl -s -H "x-api-key: YOUR_API_KEY" \ "https://homecastr.com/api/v1/forecast/hex?h3_id=882a100c65fffff&year=2028"
/api/v1/forecast/lotForecast by tax parcel account ID for integrations that already have county appraisal identifiers.
| Name | Type | Required | Description |
|---|---|---|---|
| acct | string | Yes | County tax account or parcel ID |
curl -s -H "x-api-key: YOUR_API_KEY" \ "https://homecastr.com/api/v1/forecast/lot?acct=1234567890123"
/api/v1/keysGenerate a new API key. Keys are free and issued instantly.
| Name | Type | Required | Description |
|---|---|---|---|
| string (body) | Yes | Your email address |
curl -s -X POST "https://homecastr.com/api/v1/keys" \
-H "Content-Type: application/json" \
-d '{"email": "you@company.com"}'const res = await fetch(
"https://homecastr.com/api/v1/forecast" +
"?address=123+Main+St+Houston+TX",
{
headers: {
"x-api-key": "YOUR_API_KEY"
}
}
);
const data = await res.json();
console.log(data.forecasts);import requests
r = requests.get(
"https://homecastr.com/api/v1/forecast",
params={"address": "123 Main St Houston TX"},
headers={"x-api-key": "YOUR_API_KEY"},
)
data = r.json()
print(data["forecasts"]){
"address": "string - geocoded address",
"coordinates": { "lat": "number", "lng": "number" },
"h3_cell": "string - compatibility geography key when present",
"forecast_year": "number - target year",
"current_value": "number | null - current median value ($)",
"appreciation_pct": "number | null - expected appreciation (%)",
"forecasts": {
"p10": "number - conservative value ($)",
"p50": "number - expected value ($)",
"p90": "number - upside value ($)"
},
"horizon_years": "number - years from origin to forecast",
"reliability": "number | null - model confidence (0-1)",
"fan_chart": {
"years": "[2026, 2027, 2028, 2029, 2030]",
"p10": "[number, ...]",
"p50": "[number, ...]",
"p90": "[number, ...]"
}
}Reference, guide, and status pages share this navigation so the public docs set stays consistent.
Look up a home and see where its value may be headed over the next five years.