!

How mortgage lenders are cutting underwriting time with property APIs

Photo of Alex Wilkinson
Alex Wilkinson
CEO of Houski
2026-02-15

Mortgage underwriting in Canada remains stubbornly manual. While fintech has transformed payments, lending, and insurance, mortgage underwriters still spend hours gathering property data from multiple sources, verifying borrower information, and waiting days for appraisals.

The inefficiency: Property data collection and verification consume a meaningful share of total underwriting time. For a process that already takes 2-3 weeks, that's friction that delays closings and frustrates borrowers.

Progressive lenders are solving this with property data APIs, achieving faster decisions, lower costs, and better risk assessment.

The traditional underwriting bottleneck

A typical workflow:

  1. Borrower submits application with property details
  2. Underwriter manually verifies property exists and details are accurate
  3. Third-party appraisal ordered (2-7 days wait)
  4. Appraisal reviewed against asking price
  5. Title search conducted
  6. Assessment history reviewed
  7. Comparables analysis performed
  8. Decision made

Each step requires different sources, manual lookups, and waiting. The result: a slow, expensive process where borrowers shop around for faster approvals.

API-powered underwriting: The new standard

Modern lenders replace manual research with API integrations that provide instant property data. We would first resolve the address with /search, then pull the relevant property fields with /properties. The primary underlying call against /properties looks like this:

API request
TypeScript code
const houski_data = async (): Promise<PropertiesResponse> => {

    // You must copy the PropertiesResponse type declarations from the 
    // Houski API documentation to strongly type the response

    const url = new URL('https://api.houski.ca/properties');
    url.searchParams.set('api_key', 'YOUR_API_KEY');
    url.searchParams.set('city', 'toronto');
    url.searchParams.set('country_abbreviation', 'ca');
    url.searchParams.set('province_abbreviation', 'on');
    url.searchParams.set('results_per_page', '5');
    url.searchParams.set('select', 'property_type,construction_year,interior_sq_m,land_area_sq_m,bedroom,bathroom_full,assessment_value,assessment_year,estimate_list_price,estimate_sale_price,property_taxes,latitude,longitude');

    const response = await fetch(url);
    const data = await response.json();

    return data;
}

(async () => {
let data: PropertiesResponse = await houski_data();

// Log the response
console.log(data);
})();
API response
JSON
{
  "cache_hit": false,
  "cost_cents": 5.250000476837158,
  "data": [
    {
      "address": "2202 62 Forest Manor Road",
      "bathroom_full": 2,
      "bedroom": 1,
      "construction_year": 2014,
      "estimate_list_price": 552679,
      "estimate_sale_price": 521519,
      "interior_sq_m": 55.64845657348633,
      "land_area_sq_m": 0.0,
      "latitude": 43.773887634277344,
      "longitude": -79.34544372558594,
      "property_id": "10000a939ca95e87",
      "property_type": "Apartment"
    },
    {
      "address": "504 35 Walmer Road",
      "bathroom_full": 2,
      "bedroom": 3,
      "construction_year": 2011,
      "estimate_list_price": 2098461,
      "estimate_sale_price": 3267677,
      "interior_sq_m": 232.1627655029297,
      "land_area_sq_m": 0.0,
      "latitude": 43.6690788269043,
      "longitude": -79.40582275390625,
      "property_id": "100016a8f4f4f1a9",
      "property_type": "Apartment"
    },
    {
      "address": "1108 2261 Lake Shore Boulevard W",
      "bathroom_full": 2,
      "bedroom": 2,
      "construction_year": 2022,
      "estimate_list_price": 888733,
      "estimate_sale_price": 919627,
      "interior_sq_m": 74.22891235351562,
      "land_area_sq_m": 0.0,
      "latitude": 43.6201057434082,
      "longitude": -79.48355865478516,
      "property_id": "10002ea98a9d7121",
      "property_type": "Apartment"
    },
    {
      "address": "546 Indian Grove",
      "bathroom_full": 2,
      "bedroom": 1,
      "construction_year": 2011,
      "estimate_list_price": 986792,
      "estimate_sale_price": 1086645,
      "interior_sq_m": 102.09959411621094,
      "land_area_sq_m": 367.8959045410156,
      "latitude": 43.6655387878418,
      "longitude": -79.46244812011719,
      "property_id": "1000336e22bf06cc",
      "property_type": "House"
    },
    {
      "address": "53 Sellers Avenue",
      "bathroom_full": 2,
      "bedroom": 3,
      "construction_year": 2011,
      "estimate_list_price": 1064760,
      "estimate_sale_price": 918541,
      "interior_sq_m": 102.09959411621094,
      "land_area_sq_m": 367.8959045410156,
      "latitude": 43.682369232177734,
      "longitude": -79.4459228515625,
      "property_id": "10005963503d7807",
      "property_type": "House"
    }
  ],
  "error": "",
  "pagination": {
    "current_page": 1,
    "has_next_page": true,
    "has_previous_page": false,
    "page_total": 272251
  },
  "price_quote": false,
  "result_total": 1361251,
  "time_ms": 5197,
  "ui_info": {
    "city": "Toronto",
    "city_id": "6cdbdee2492718ed",
    "city_link": "ca/on/toronto",
    "city_slug": "toronto",
    "country": "Canada",
    "country_abbreviation": "CA",
    "country_abbreviation_id": "9ace2b6431b7f1be",
    "country_abbreviation_link": "ca",
    "country_slug": "canada",
    "province": "Ontario",
    "province_abbreviation": "ON",
    "province_abbreviation_id": "146699ee774499d3",
    "province_abbreviation_link": "ca/on",
    "province_slug": "ontario"
  }
}

See our Search API docs and Properties API docs.

This replaces multiple manual lookups and verifies the borrower's claims instantly. Underwriting flags (pre-1970 construction, asking price more than 15 percent off the model estimate) are derived client-side from the response.

Key use cases for mortgage lenders

1. Application pre-fill and verification

When a borrower enters a property address, automatically populate and verify:

  • Property type (house, condo, townhouse)
  • Square footage and lot size
  • Bedrooms and bathrooms
  • Year built
  • Assessed value
  • Assessment history

This reduces friction and flags discrepancies between borrower input and actual data.

2. Instant collateral assessment

Sanity-check the deal with an automated valuation model (AVM) before ordering an expensive appraisal. The block below is a live call against the real API:

API request
TypeScript code
const houski_data = async (): Promise<AvmResponse> => {

    // You must copy the AvmResponse type declarations from the 
    // Houski API documentation to strongly type the response

    const url = new URL('https://api.houski.ca/avm');
    url.searchParams.set('api_key', 'YOUR_API_KEY');
    url.searchParams.set('property_id', 'bd9c6fb24c31c772');

    const response = await fetch(url);
    const data = await response.json();

    return data;
}

(async () => {
let data: AvmResponse = await houski_data();

// Log the response
console.log(data);
})();
API response
JSON
{
  "cache_hit": true,
  "cost_cents": 500.0,
  "data": {
    "address": "302 610 17 Avenue SW",
    "bathroom_full": 1,
    "bathroom_half": 1,
    "bedroom": 2,
    "city": "Calgary",
    "comparable_properties": [
      {
        "address": "402 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2025-02-07",
        "image": "589c5b211ab31176_46d18d02",
        "interior_sq_m": 91.88034057617188,
        "latitude": 51.03819274902344,
        "list_price": 295000,
        "longitude": -114.07510375976562
      },
      {
        "address": "101 523 15 Avenue SW",
        "distance_km": 0.15573714673519137,
        "estimate_sale_date_sold": "2023-08-29",
        "image": "6d3f02fca68d547e_b6f2526e",
        "interior_sq_m": 91.9732437133789,
        "latitude": 51.0385856628418,
        "list_price": 288888,
        "longitude": -114.07293701171876
      },
      {
        "address": "1105 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2023-08-23",
        "image": "59eb4d7ffd625770_807d4658",
        "interior_sq_m": 92.99517059326172,
        "latitude": 51.04155349731445,
        "list_price": 299900,
        "longitude": -114.07714080810548
      },
      {
        "address": "109 545 18 Avenue SW",
        "distance_km": 0.19652090966701508,
        "estimate_sale_date_sold": "2025-09-03",
        "image": "703794262c3f0a6f_ae0e2846",
        "interior_sq_m": 94.10999298095705,
        "latitude": 51.03668594360352,
        "list_price": 319900,
        "longitude": -114.0736083984375
      },
      {
        "address": "401 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-01-18",
        "image": "add60c129cc174c8_15dc7a7e",
        "interior_sq_m": 92.90226745605467,
        "latitude": 51.04155349731445,
        "list_price": 294000,
        "longitude": -114.07714080810548
      },
      {
        "address": "500 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2023-05-17",
        "image": "fb81bd27e5d3b319_860c3dd6",
        "interior_sq_m": 93.36677551269533,
        "latitude": 51.03819274902344,
        "list_price": 324900,
        "longitude": -114.07510375976562
      },
      {
        "address": "701 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-04-04",
        "image": "27170c00d68d56c5_a08329a3",
        "interior_sq_m": 94.48160552978516,
        "latitude": 51.04155349731445,
        "list_price": 314900,
        "longitude": -114.07714080810548
      },
      {
        "address": "504 616 15 Avenue SW",
        "distance_km": 0.11205749213695526,
        "estimate_sale_date_sold": "2025-07-04",
        "image": "e731e220553c9548_88738769",
        "interior_sq_m": 87.79264068603516,
        "latitude": 51.03919219970703,
        "list_price": 289900,
        "longitude": -114.07533264160156
      },
      {
        "address": "203 330 15 Avenue SW",
        "distance_km": 0.35846400260925293,
        "estimate_sale_date_sold": "2024-05-13",
        "image": "9bfb40e46e0da97_57c6d01e",
        "interior_sq_m": 90.20809936523438,
        "latitude": 51.039058685302734,
        "list_price": 318800,
        "longitude": -114.07009887695312
      },
      {
        "address": "305 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-08-04",
        "image": "1119eb5e5c0e6dd6_9dfcbaf5",
        "interior_sq_m": 94.2957992553711,
        "latitude": 51.04155349731445,
        "list_price": 290000,
        "longitude": -114.07714080810548
      }
    ],
    "comparable_properties_total": 26446,
    "construction_year": 1979,
    "country": "Canada",
    "den": 0,
    "estimate_list_price": {
      "confidence_score": 95.37734985351562,
      "model_metrics": {
        "coefficient_of_variation": 21.297779888460052,
        "error_10th_percentile": 3827.418701171875,
        "error_25th_percentile": 9674.828125,
        "error_50th_percentile": 23070.7421875,
        "error_75th_percentile": 47898.9296875,
        "error_90th_percentile": 92634.5625,
        "error_95th_percentile": 148044.328125,
        "forecast_std_dev": 128036.875,
        "mae": 47591.03125,
        "mape": 6.9191975593566895,
        "mean_bias": -5065.5068359375,
        "median_bias": 430.265625,
        "median_mape": 4.622647285461426,
        "mse": 16419014656.0,
        "over_prediction_rate": 50.56352952509392,
        "pct_error_10th": 0.825827956199646,
        "pct_error_90th": 14.368406295776367,
        "rmse": 128136.703125,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.98,
        "under_prediction_rate": 49.43647047490608,
        "within_10_pct": 80.1416048550236,
        "within_15_pct": 90.8823812734804,
        "within_20_pct": 95.21722377420288,
        "within_5_pct": 53.00067430883345
      },
      "value": 304696.46875
    },
    "estimate_rent_monthly": {
      "confidence_score": 84.40579986572266,
      "model_metrics": {
        "coefficient_of_variation": 74.19626193400119,
        "error_10th_percentile": 11197.140625,
        "error_25th_percentile": 29858.390625,
        "error_50th_percentile": 73107.78125,
        "error_75th_percentile": 163402.125,
        "error_90th_percentile": 341056.21875,
        "error_95th_percentile": 550266.6875,
        "forecast_std_dev": 451020.15625,
        "mae": 168982.734375,
        "mape": 33.335357666015625,
        "mean_bias": -57108.90234375,
        "median_bias": -1695.578125,
        "median_mape": 15.594200134277344,
        "mse": 206676312064.0,
        "over_prediction_rate": 49.18625,
        "pct_error_10th": 2.5083909034729004,
        "pct_error_90th": 66.41152954101562,
        "rmse": 454616.65625,
        "testing_r_squared": 0.72,
        "training_r_squared": 0.82,
        "under_prediction_rate": 50.81375,
        "within_10_pct": 36.0375,
        "within_15_pct": 48.791250000000005,
        "within_20_pct": 58.3375,
        "within_5_pct": 19.635
      },
      "value": 2113.846923828125
    },
    "estimate_sale_price": {
      "confidence_score": 95.3768310546875,
      "model_metrics": {
        "coefficient_of_variation": 21.802883473823258,
        "error_10th_percentile": 3706.49365234375,
        "error_25th_percentile": 9493.46875,
        "error_50th_percentile": 22532.15625,
        "error_75th_percentile": 47268.0703125,
        "error_90th_percentile": 93783.46875,
        "error_95th_percentile": 150844.203125,
        "forecast_std_dev": 127978.265625,
        "mae": 47541.25,
        "mape": 7.054271221160889,
        "mean_bias": -4664.0380859375,
        "median_bias": 475.828125,
        "median_mape": 4.623165130615234,
        "mse": 16400123904.0,
        "over_prediction_rate": 50.63577690010597,
        "pct_error_10th": 0.8310901522636414,
        "pct_error_90th": 14.612176895141602,
        "rmse": 128062.96875,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.99,
        "under_prediction_rate": 49.36422309989404,
        "within_10_pct": 79.77555148829593,
        "within_15_pct": 90.50187843175031,
        "within_20_pct": 94.70185916578365,
        "within_5_pct": 53.04402273384067
      },
      "value": 293364.59375
    },
    "image": "bd9c6fb24c31c772_7e931788",
    "interior_sq_m": 92.43848419189452,
    "latitude": 51.03819274902344,
    "longitude": -114.07510375976562,
    "price_history": [
      {
        "date": "2025-02-18",
        "estimate_list_price": 328939.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 303350.5625
      },
      {
        "date": "2025-03-20",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304171.25
      },
      {
        "date": "2025-04-19",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304964.21875
      },
      {
        "date": "2025-05-19",
        "estimate_list_price": 335027.4375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 311037.21875
      },
      {
        "date": "2025-06-18",
        "estimate_list_price": 333825.6875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 314355.09375
      },
      {
        "date": "2025-07-18",
        "estimate_list_price": 332129.96875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 315810.03125
      },
      {
        "date": "2025-08-17",
        "estimate_list_price": 331247.09375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 313273.1875
      },
      {
        "date": "2025-09-16",
        "estimate_list_price": 322242.5,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 307987.21875
      },
      {
        "date": "2025-10-16",
        "estimate_list_price": 310982.65625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304819.40625
      },
      {
        "date": "2025-11-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 309683.09375
      },
      {
        "date": "2025-12-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 308561.96875
      },
      {
        "date": "2026-01-14",
        "estimate_list_price": 303210.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304967.40625
      },
      {
        "date": "2026-02-13",
        "estimate_list_price": 302817.875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298701.09375
      },
      {
        "date": "2026-03-15",
        "estimate_list_price": 303162.3125,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298037.53125
      },
      {
        "date": "2026-04-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 297308.53125
      },
      {
        "date": "2026-05-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-06-13",
        "estimate_list_price": 302610.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-07-13",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      },
      {
        "date": "2026-08-12",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      }
    ],
    "property_id": "bd9c6fb24c31c772",
    "property_type": "Apartment",
    "property_warning_flags": [
      {
        "description": "Monthly fees run about 4% of the estimated value each year, above the typical range. High fees can weigh on resale.",
        "warning": "High monthly fees"
      },
      {
        "description": "This property appears to have been converted between residential and commercial use. Conversions can carry permit, zoning, and insurance complications worth confirming.",
        "warning": "Use conversion"
      }
    ],
    "province": "Alberta",
    "score_air_quality": 6,
    "score_bicycle": 9,
    "score_cell_coverage": 10,
    "score_curb_appeal": 4,
    "score_earthquake": 9,
    "score_education": 9,
    "score_entertainment": 10,
    "score_family": 0,
    "score_fire": 9,
    "score_flood": 9,
    "score_food_and_drink": 10,
    "score_hurricane": 10,
    "score_internet": 10,
    "score_nature": 6,
    "score_parking": 8,
    "score_quiet": 2,
    "score_retirement": 0,
    "score_safety": 6,
    "score_shopping": 9,
    "score_smell": 4,
    "score_tornado": 8,
    "score_total": 7,
    "score_total_percent": 0.6960000395774841,
    "score_traffic": 0,
    "score_transit": 9,
    "score_walkability": 10,
    "score_water_quality": 7,
    "valuation_date": "2026-08-12"
  },
  "error": "",
  "price_quote": false,
  "time_ms": 656,
  "url": "https://www.houski.ca/avm-report/bd9c6fb24c31c772_a49b86c7"
}

The AVM endpoint provides value estimates, confidence scores, and model metrics so underwriters understand each valuation's reliability. From there it is a one-line calculation to derive loan-to-value and gate against your underwriting guidelines.

3. Risk factor identification

Property data reveals risk factors that might otherwise be missed:

  • Age-related risks: Older construction, aging roof, outdated electrical or plumbing
  • Location risks: Flood and fire safety scores (higher equals safer), proximity to hazards
  • Market risks: Neighborhood price trends, days on market, inventory levels
  • Ownership signals: Assessment history anomalies, ownership patterns

We would pull the relevant risk fields with one /properties call, then run the threshold rules client-side. The underlying call looks like this:

API request
TypeScript code
const houski_data = async (): Promise<PropertiesResponse> => {

    // You must copy the PropertiesResponse type declarations from the 
    // Houski API documentation to strongly type the response

    const url = new URL('https://api.houski.ca/properties');
    url.searchParams.set('api_key', 'YOUR_API_KEY');
    url.searchParams.set('property_id_eq', 'bd9c6fb24c31c772');
    url.searchParams.set('select', 'construction_year,roof_material_install_year,foundation_type,heating_type_first,score_flood,score_fire,assessment_value,estimate_sale_price');

    const response = await fetch(url);
    const data = await response.json();

    return data;
}

(async () => {
let data: PropertiesResponse = await houski_data();

// Log the response
console.log(data);
})();
API response
JSON
{
  "cache_hit": false,
  "cost_cents": 0.8200000524520874,
  "data": [
    {
      "address": "302 610 17 Avenue SW",
      "assessment_value": 301500,
      "construction_year": 1979,
      "estimate_sale_price": 293364,
      "foundation_type": "Wood",
      "heating_type_first": "Hot water",
      "property_id": "bd9c6fb24c31c772",
      "roof_material_install_year": 2022,
      "score_fire": 9,
      "score_flood": 9
    }
  ],
  "error": "",
  "pagination": {
    "current_page": 1,
    "has_next_page": false,
    "has_previous_page": false,
    "page_total": 1
  },
  "price_quote": false,
  "result_total": 1,
  "time_ms": 25,
  "ui_info": {
    "address": "302 610 17 Avenue SW",
    "address_link": "ca/ab/calgary/beltline/302-610-17-avenue-sw",
    "address_slug": "302-610-17-avenue-sw",
    "city": "Calgary",
    "city_id": "6ec95b53075d062c",
    "city_link": "ca/ab/calgary",
    "city_slug": "calgary",
    "community": "Beltline",
    "community_id": "ecc51da246c7dd4a",
    "community_link": "ca/ab/calgary/beltline",
    "community_slug": "beltline",
    "country": "Canada",
    "country_abbreviation": "CA",
    "country_abbreviation_id": "9ace2b6431b7f1be",
    "country_abbreviation_link": "ca",
    "country_slug": "canada",
    "parent_address": "610 17 Avenue SW",
    "parent_property_id": "52a7d622eafe5319",
    "property_id": "bd9c6fb24c31c772",
    "province": "Alberta",
    "province_abbreviation": "AB",
    "province_abbreviation_id": "aae1f05a0f89d2c7",
    "province_abbreviation_link": "ca/ab",
    "province_slug": "alberta"
  }
}

Flag a roof estimated at 15 or more years old, a flood safety score below 3, or a fire safety score below 3. All Houski score_* fields are 0 to 10 and oriented so higher means safer.

4. Comparable property analysis

Support appraisal review with instant comparables. The AVM response includes up to 10 comparable properties within 5km, ranked by similarity to the subject property, plus a total count of properties of the same type in the same city:

API request
TypeScript code
const houski_data = async (): Promise<AvmResponse> => {

    // You must copy the AvmResponse type declarations from the 
    // Houski API documentation to strongly type the response

    const url = new URL('https://api.houski.ca/avm');
    url.searchParams.set('api_key', 'YOUR_API_KEY');
    url.searchParams.set('property_id', 'bd9c6fb24c31c772');

    const response = await fetch(url);
    const data = await response.json();

    return data;
}

(async () => {
let data: AvmResponse = await houski_data();

// Log the response
console.log(data);
})();
API response
JSON
{
  "cache_hit": true,
  "cost_cents": 500.0,
  "data": {
    "address": "302 610 17 Avenue SW",
    "bathroom_full": 1,
    "bathroom_half": 1,
    "bedroom": 2,
    "city": "Calgary",
    "comparable_properties": [
      {
        "address": "402 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2025-02-07",
        "image": "589c5b211ab31176_46d18d02",
        "interior_sq_m": 91.88034057617188,
        "latitude": 51.03819274902344,
        "list_price": 295000,
        "longitude": -114.07510375976562
      },
      {
        "address": "101 523 15 Avenue SW",
        "distance_km": 0.15573714673519137,
        "estimate_sale_date_sold": "2023-08-29",
        "image": "6d3f02fca68d547e_b6f2526e",
        "interior_sq_m": 91.9732437133789,
        "latitude": 51.0385856628418,
        "list_price": 288888,
        "longitude": -114.07293701171876
      },
      {
        "address": "1105 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2023-08-23",
        "image": "59eb4d7ffd625770_807d4658",
        "interior_sq_m": 92.99517059326172,
        "latitude": 51.04155349731445,
        "list_price": 299900,
        "longitude": -114.07714080810548
      },
      {
        "address": "109 545 18 Avenue SW",
        "distance_km": 0.19652090966701508,
        "estimate_sale_date_sold": "2025-09-03",
        "image": "703794262c3f0a6f_ae0e2846",
        "interior_sq_m": 94.10999298095705,
        "latitude": 51.03668594360352,
        "list_price": 319900,
        "longitude": -114.0736083984375
      },
      {
        "address": "401 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-01-18",
        "image": "add60c129cc174c8_15dc7a7e",
        "interior_sq_m": 92.90226745605467,
        "latitude": 51.04155349731445,
        "list_price": 294000,
        "longitude": -114.07714080810548
      },
      {
        "address": "500 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2023-05-17",
        "image": "fb81bd27e5d3b319_860c3dd6",
        "interior_sq_m": 93.36677551269533,
        "latitude": 51.03819274902344,
        "list_price": 324900,
        "longitude": -114.07510375976562
      },
      {
        "address": "701 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-04-04",
        "image": "27170c00d68d56c5_a08329a3",
        "interior_sq_m": 94.48160552978516,
        "latitude": 51.04155349731445,
        "list_price": 314900,
        "longitude": -114.07714080810548
      },
      {
        "address": "504 616 15 Avenue SW",
        "distance_km": 0.11205749213695526,
        "estimate_sale_date_sold": "2025-07-04",
        "image": "e731e220553c9548_88738769",
        "interior_sq_m": 87.79264068603516,
        "latitude": 51.03919219970703,
        "list_price": 289900,
        "longitude": -114.07533264160156
      },
      {
        "address": "203 330 15 Avenue SW",
        "distance_km": 0.35846400260925293,
        "estimate_sale_date_sold": "2024-05-13",
        "image": "9bfb40e46e0da97_57c6d01e",
        "interior_sq_m": 90.20809936523438,
        "latitude": 51.039058685302734,
        "list_price": 318800,
        "longitude": -114.07009887695312
      },
      {
        "address": "305 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-08-04",
        "image": "1119eb5e5c0e6dd6_9dfcbaf5",
        "interior_sq_m": 94.2957992553711,
        "latitude": 51.04155349731445,
        "list_price": 290000,
        "longitude": -114.07714080810548
      }
    ],
    "comparable_properties_total": 26446,
    "construction_year": 1979,
    "country": "Canada",
    "den": 0,
    "estimate_list_price": {
      "confidence_score": 95.37734985351562,
      "model_metrics": {
        "coefficient_of_variation": 21.297779888460052,
        "error_10th_percentile": 3827.418701171875,
        "error_25th_percentile": 9674.828125,
        "error_50th_percentile": 23070.7421875,
        "error_75th_percentile": 47898.9296875,
        "error_90th_percentile": 92634.5625,
        "error_95th_percentile": 148044.328125,
        "forecast_std_dev": 128036.875,
        "mae": 47591.03125,
        "mape": 6.9191975593566895,
        "mean_bias": -5065.5068359375,
        "median_bias": 430.265625,
        "median_mape": 4.622647285461426,
        "mse": 16419014656.0,
        "over_prediction_rate": 50.56352952509392,
        "pct_error_10th": 0.825827956199646,
        "pct_error_90th": 14.368406295776367,
        "rmse": 128136.703125,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.98,
        "under_prediction_rate": 49.43647047490608,
        "within_10_pct": 80.1416048550236,
        "within_15_pct": 90.8823812734804,
        "within_20_pct": 95.21722377420288,
        "within_5_pct": 53.00067430883345
      },
      "value": 304696.46875
    },
    "estimate_rent_monthly": {
      "confidence_score": 84.40579986572266,
      "model_metrics": {
        "coefficient_of_variation": 74.19626193400119,
        "error_10th_percentile": 11197.140625,
        "error_25th_percentile": 29858.390625,
        "error_50th_percentile": 73107.78125,
        "error_75th_percentile": 163402.125,
        "error_90th_percentile": 341056.21875,
        "error_95th_percentile": 550266.6875,
        "forecast_std_dev": 451020.15625,
        "mae": 168982.734375,
        "mape": 33.335357666015625,
        "mean_bias": -57108.90234375,
        "median_bias": -1695.578125,
        "median_mape": 15.594200134277344,
        "mse": 206676312064.0,
        "over_prediction_rate": 49.18625,
        "pct_error_10th": 2.5083909034729004,
        "pct_error_90th": 66.41152954101562,
        "rmse": 454616.65625,
        "testing_r_squared": 0.72,
        "training_r_squared": 0.82,
        "under_prediction_rate": 50.81375,
        "within_10_pct": 36.0375,
        "within_15_pct": 48.791250000000005,
        "within_20_pct": 58.3375,
        "within_5_pct": 19.635
      },
      "value": 2113.846923828125
    },
    "estimate_sale_price": {
      "confidence_score": 95.3768310546875,
      "model_metrics": {
        "coefficient_of_variation": 21.802883473823258,
        "error_10th_percentile": 3706.49365234375,
        "error_25th_percentile": 9493.46875,
        "error_50th_percentile": 22532.15625,
        "error_75th_percentile": 47268.0703125,
        "error_90th_percentile": 93783.46875,
        "error_95th_percentile": 150844.203125,
        "forecast_std_dev": 127978.265625,
        "mae": 47541.25,
        "mape": 7.054271221160889,
        "mean_bias": -4664.0380859375,
        "median_bias": 475.828125,
        "median_mape": 4.623165130615234,
        "mse": 16400123904.0,
        "over_prediction_rate": 50.63577690010597,
        "pct_error_10th": 0.8310901522636414,
        "pct_error_90th": 14.612176895141602,
        "rmse": 128062.96875,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.99,
        "under_prediction_rate": 49.36422309989404,
        "within_10_pct": 79.77555148829593,
        "within_15_pct": 90.50187843175031,
        "within_20_pct": 94.70185916578365,
        "within_5_pct": 53.04402273384067
      },
      "value": 293364.59375
    },
    "image": "bd9c6fb24c31c772_7e931788",
    "interior_sq_m": 92.43848419189452,
    "latitude": 51.03819274902344,
    "longitude": -114.07510375976562,
    "price_history": [
      {
        "date": "2025-02-18",
        "estimate_list_price": 328939.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 303350.5625
      },
      {
        "date": "2025-03-20",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304171.25
      },
      {
        "date": "2025-04-19",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304964.21875
      },
      {
        "date": "2025-05-19",
        "estimate_list_price": 335027.4375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 311037.21875
      },
      {
        "date": "2025-06-18",
        "estimate_list_price": 333825.6875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 314355.09375
      },
      {
        "date": "2025-07-18",
        "estimate_list_price": 332129.96875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 315810.03125
      },
      {
        "date": "2025-08-17",
        "estimate_list_price": 331247.09375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 313273.1875
      },
      {
        "date": "2025-09-16",
        "estimate_list_price": 322242.5,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 307987.21875
      },
      {
        "date": "2025-10-16",
        "estimate_list_price": 310982.65625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304819.40625
      },
      {
        "date": "2025-11-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 309683.09375
      },
      {
        "date": "2025-12-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 308561.96875
      },
      {
        "date": "2026-01-14",
        "estimate_list_price": 303210.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304967.40625
      },
      {
        "date": "2026-02-13",
        "estimate_list_price": 302817.875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298701.09375
      },
      {
        "date": "2026-03-15",
        "estimate_list_price": 303162.3125,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298037.53125
      },
      {
        "date": "2026-04-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 297308.53125
      },
      {
        "date": "2026-05-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-06-13",
        "estimate_list_price": 302610.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-07-13",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      },
      {
        "date": "2026-08-12",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      }
    ],
    "property_id": "bd9c6fb24c31c772",
    "property_type": "Apartment",
    "property_warning_flags": [
      {
        "description": "Monthly fees run about 4% of the estimated value each year, above the typical range. High fees can weigh on resale.",
        "warning": "High monthly fees"
      },
      {
        "description": "This property appears to have been converted between residential and commercial use. Conversions can carry permit, zoning, and insurance complications worth confirming.",
        "warning": "Use conversion"
      }
    ],
    "province": "Alberta",
    "score_air_quality": 6,
    "score_bicycle": 9,
    "score_cell_coverage": 10,
    "score_curb_appeal": 4,
    "score_earthquake": 9,
    "score_education": 9,
    "score_entertainment": 10,
    "score_family": 0,
    "score_fire": 9,
    "score_flood": 9,
    "score_food_and_drink": 10,
    "score_hurricane": 10,
    "score_internet": 10,
    "score_nature": 6,
    "score_parking": 8,
    "score_quiet": 2,
    "score_retirement": 0,
    "score_safety": 6,
    "score_shopping": 9,
    "score_smell": 4,
    "score_tornado": 8,
    "score_total": 7,
    "score_total_percent": 0.6960000395774841,
    "score_traffic": 0,
    "score_transit": 9,
    "score_walkability": 10,
    "score_water_quality": 7,
    "valuation_date": "2026-08-12"
  },
  "error": "",
  "price_quote": false,
  "time_ms": 656,
  "url": "https://www.houski.ca/avm-report/bd9c6fb24c31c772_a49b86c7"
}

See our AVM API docs.

5. Portfolio monitoring

We would loop through each property in the portfolio, calling /avm once per property to get the current valuation and confidence score:

API request
TypeScript code
const houski_data = async (): Promise<AvmResponse> => {

    // You must copy the AvmResponse type declarations from the 
    // Houski API documentation to strongly type the response

    const url = new URL('https://api.houski.ca/avm');
    url.searchParams.set('api_key', 'YOUR_API_KEY');
    url.searchParams.set('property_id', 'bd9c6fb24c31c772');

    const response = await fetch(url);
    const data = await response.json();

    return data;
}

(async () => {
let data: AvmResponse = await houski_data();

// Log the response
console.log(data);
})();
API response
JSON
{
  "cache_hit": true,
  "cost_cents": 500.0,
  "data": {
    "address": "302 610 17 Avenue SW",
    "bathroom_full": 1,
    "bathroom_half": 1,
    "bedroom": 2,
    "city": "Calgary",
    "comparable_properties": [
      {
        "address": "402 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2025-02-07",
        "image": "589c5b211ab31176_46d18d02",
        "interior_sq_m": 91.88034057617188,
        "latitude": 51.03819274902344,
        "list_price": 295000,
        "longitude": -114.07510375976562
      },
      {
        "address": "101 523 15 Avenue SW",
        "distance_km": 0.15573714673519137,
        "estimate_sale_date_sold": "2023-08-29",
        "image": "6d3f02fca68d547e_b6f2526e",
        "interior_sq_m": 91.9732437133789,
        "latitude": 51.0385856628418,
        "list_price": 288888,
        "longitude": -114.07293701171876
      },
      {
        "address": "1105 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2023-08-23",
        "image": "59eb4d7ffd625770_807d4658",
        "interior_sq_m": 92.99517059326172,
        "latitude": 51.04155349731445,
        "list_price": 299900,
        "longitude": -114.07714080810548
      },
      {
        "address": "109 545 18 Avenue SW",
        "distance_km": 0.19652090966701508,
        "estimate_sale_date_sold": "2025-09-03",
        "image": "703794262c3f0a6f_ae0e2846",
        "interior_sq_m": 94.10999298095705,
        "latitude": 51.03668594360352,
        "list_price": 319900,
        "longitude": -114.0736083984375
      },
      {
        "address": "401 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-01-18",
        "image": "add60c129cc174c8_15dc7a7e",
        "interior_sq_m": 92.90226745605467,
        "latitude": 51.04155349731445,
        "list_price": 294000,
        "longitude": -114.07714080810548
      },
      {
        "address": "500 610 17 Avenue SW",
        "distance_km": 0.0,
        "estimate_sale_date_sold": "2023-05-17",
        "image": "fb81bd27e5d3b319_860c3dd6",
        "interior_sq_m": 93.36677551269533,
        "latitude": 51.03819274902344,
        "list_price": 324900,
        "longitude": -114.07510375976562
      },
      {
        "address": "701 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-04-04",
        "image": "27170c00d68d56c5_a08329a3",
        "interior_sq_m": 94.48160552978516,
        "latitude": 51.04155349731445,
        "list_price": 314900,
        "longitude": -114.07714080810548
      },
      {
        "address": "504 616 15 Avenue SW",
        "distance_km": 0.11205749213695526,
        "estimate_sale_date_sold": "2025-07-04",
        "image": "e731e220553c9548_88738769",
        "interior_sq_m": 87.79264068603516,
        "latitude": 51.03919219970703,
        "list_price": 289900,
        "longitude": -114.07533264160156
      },
      {
        "address": "203 330 15 Avenue SW",
        "distance_km": 0.35846400260925293,
        "estimate_sale_date_sold": "2024-05-13",
        "image": "9bfb40e46e0da97_57c6d01e",
        "interior_sq_m": 90.20809936523438,
        "latitude": 51.039058685302734,
        "list_price": 318800,
        "longitude": -114.07009887695312
      },
      {
        "address": "305 1209 6 Street SW",
        "distance_km": 0.39864420890808105,
        "estimate_sale_date_sold": "2024-08-04",
        "image": "1119eb5e5c0e6dd6_9dfcbaf5",
        "interior_sq_m": 94.2957992553711,
        "latitude": 51.04155349731445,
        "list_price": 290000,
        "longitude": -114.07714080810548
      }
    ],
    "comparable_properties_total": 26446,
    "construction_year": 1979,
    "country": "Canada",
    "den": 0,
    "estimate_list_price": {
      "confidence_score": 95.37734985351562,
      "model_metrics": {
        "coefficient_of_variation": 21.297779888460052,
        "error_10th_percentile": 3827.418701171875,
        "error_25th_percentile": 9674.828125,
        "error_50th_percentile": 23070.7421875,
        "error_75th_percentile": 47898.9296875,
        "error_90th_percentile": 92634.5625,
        "error_95th_percentile": 148044.328125,
        "forecast_std_dev": 128036.875,
        "mae": 47591.03125,
        "mape": 6.9191975593566895,
        "mean_bias": -5065.5068359375,
        "median_bias": 430.265625,
        "median_mape": 4.622647285461426,
        "mse": 16419014656.0,
        "over_prediction_rate": 50.56352952509392,
        "pct_error_10th": 0.825827956199646,
        "pct_error_90th": 14.368406295776367,
        "rmse": 128136.703125,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.98,
        "under_prediction_rate": 49.43647047490608,
        "within_10_pct": 80.1416048550236,
        "within_15_pct": 90.8823812734804,
        "within_20_pct": 95.21722377420288,
        "within_5_pct": 53.00067430883345
      },
      "value": 304696.46875
    },
    "estimate_rent_monthly": {
      "confidence_score": 84.40579986572266,
      "model_metrics": {
        "coefficient_of_variation": 74.19626193400119,
        "error_10th_percentile": 11197.140625,
        "error_25th_percentile": 29858.390625,
        "error_50th_percentile": 73107.78125,
        "error_75th_percentile": 163402.125,
        "error_90th_percentile": 341056.21875,
        "error_95th_percentile": 550266.6875,
        "forecast_std_dev": 451020.15625,
        "mae": 168982.734375,
        "mape": 33.335357666015625,
        "mean_bias": -57108.90234375,
        "median_bias": -1695.578125,
        "median_mape": 15.594200134277344,
        "mse": 206676312064.0,
        "over_prediction_rate": 49.18625,
        "pct_error_10th": 2.5083909034729004,
        "pct_error_90th": 66.41152954101562,
        "rmse": 454616.65625,
        "testing_r_squared": 0.72,
        "training_r_squared": 0.82,
        "under_prediction_rate": 50.81375,
        "within_10_pct": 36.0375,
        "within_15_pct": 48.791250000000005,
        "within_20_pct": 58.3375,
        "within_5_pct": 19.635
      },
      "value": 2113.846923828125
    },
    "estimate_sale_price": {
      "confidence_score": 95.3768310546875,
      "model_metrics": {
        "coefficient_of_variation": 21.802883473823258,
        "error_10th_percentile": 3706.49365234375,
        "error_25th_percentile": 9493.46875,
        "error_50th_percentile": 22532.15625,
        "error_75th_percentile": 47268.0703125,
        "error_90th_percentile": 93783.46875,
        "error_95th_percentile": 150844.203125,
        "forecast_std_dev": 127978.265625,
        "mae": 47541.25,
        "mape": 7.054271221160889,
        "mean_bias": -4664.0380859375,
        "median_bias": 475.828125,
        "median_mape": 4.623165130615234,
        "mse": 16400123904.0,
        "over_prediction_rate": 50.63577690010597,
        "pct_error_10th": 0.8310901522636414,
        "pct_error_90th": 14.612176895141602,
        "rmse": 128062.96875,
        "testing_r_squared": 0.95,
        "training_r_squared": 0.99,
        "under_prediction_rate": 49.36422309989404,
        "within_10_pct": 79.77555148829593,
        "within_15_pct": 90.50187843175031,
        "within_20_pct": 94.70185916578365,
        "within_5_pct": 53.04402273384067
      },
      "value": 293364.59375
    },
    "image": "bd9c6fb24c31c772_7e931788",
    "interior_sq_m": 92.43848419189452,
    "latitude": 51.03819274902344,
    "longitude": -114.07510375976562,
    "price_history": [
      {
        "date": "2025-02-18",
        "estimate_list_price": 328939.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 303350.5625
      },
      {
        "date": "2025-03-20",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304171.25
      },
      {
        "date": "2025-04-19",
        "estimate_list_price": 329062.625,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 304964.21875
      },
      {
        "date": "2025-05-19",
        "estimate_list_price": 335027.4375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 311037.21875
      },
      {
        "date": "2025-06-18",
        "estimate_list_price": 333825.6875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 314355.09375
      },
      {
        "date": "2025-07-18",
        "estimate_list_price": 332129.96875,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 315810.03125
      },
      {
        "date": "2025-08-17",
        "estimate_list_price": 331247.09375,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 313273.1875
      },
      {
        "date": "2025-09-16",
        "estimate_list_price": 322242.5,
        "estimate_rent_monthly": 2109.8994140625,
        "estimate_sale_price": 307987.21875
      },
      {
        "date": "2025-10-16",
        "estimate_list_price": 310982.65625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304819.40625
      },
      {
        "date": "2025-11-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 309683.09375
      },
      {
        "date": "2025-12-15",
        "estimate_list_price": 310966.9375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 308561.96875
      },
      {
        "date": "2026-01-14",
        "estimate_list_price": 303210.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 304967.40625
      },
      {
        "date": "2026-02-13",
        "estimate_list_price": 302817.875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298701.09375
      },
      {
        "date": "2026-03-15",
        "estimate_list_price": 303162.3125,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 298037.53125
      },
      {
        "date": "2026-04-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 297308.53125
      },
      {
        "date": "2026-05-14",
        "estimate_list_price": 302872.15625,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-06-13",
        "estimate_list_price": 302610.59375,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 292016.375
      },
      {
        "date": "2026-07-13",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      },
      {
        "date": "2026-08-12",
        "estimate_list_price": 304696.46875,
        "estimate_rent_monthly": 2113.846923828125,
        "estimate_sale_price": 293364.59375
      }
    ],
    "property_id": "bd9c6fb24c31c772",
    "property_type": "Apartment",
    "property_warning_flags": [
      {
        "description": "Monthly fees run about 4% of the estimated value each year, above the typical range. High fees can weigh on resale.",
        "warning": "High monthly fees"
      },
      {
        "description": "This property appears to have been converted between residential and commercial use. Conversions can carry permit, zoning, and insurance complications worth confirming.",
        "warning": "Use conversion"
      }
    ],
    "province": "Alberta",
    "score_air_quality": 6,
    "score_bicycle": 9,
    "score_cell_coverage": 10,
    "score_curb_appeal": 4,
    "score_earthquake": 9,
    "score_education": 9,
    "score_entertainment": 10,
    "score_family": 0,
    "score_fire": 9,
    "score_flood": 9,
    "score_food_and_drink": 10,
    "score_hurricane": 10,
    "score_internet": 10,
    "score_nature": 6,
    "score_parking": 8,
    "score_quiet": 2,
    "score_retirement": 0,
    "score_safety": 6,
    "score_shopping": 9,
    "score_smell": 4,
    "score_tornado": 8,
    "score_total": 7,
    "score_total_percent": 0.6960000395774841,
    "score_traffic": 0,
    "score_transit": 9,
    "score_walkability": 10,
    "score_water_quality": 7,
    "valuation_date": "2026-08-12"
  },
  "error": "",
  "price_quote": false,
  "time_ms": 656,
  "url": "https://www.houski.ca/avm-report/bd9c6fb24c31c772_a49b86c7"
}

Implementation roadmap

Phase 1: Application enhancement

Integrate property lookup into your application flow. Verify and populate property details automatically when borrowers enter an address.

Phase 2: Pre-screening automation

Add AVM integration to pre-screen applications before manual underwriting. Flag deals outside guidelines. Fast-track conforming applications.

Phase 3: Underwriting decision support

Give underwriters property intelligence dashboards with risk factors, comparables, and valuation confidence metrics.

Phase 4: Portfolio analytics

Extend the integration to monitor existing portfolio values and flag declining or elevated-risk properties.

The return on investment (ROI) for mortgage lenders

Faster processing: Automated verification and pre-screening reduces time-to-decision from days to minutes.

Lower costs: Less manual research. Order full appraisals only when AVM pre-screening indicates necessity.

Better risk selection: Comprehensive data catches risks manual review might miss, preventing costly defaults.

Improved borrower experience: Faster responses and pre-filled applications reduce friction.

Pricing for mortgage lenders

  • Property lookups: Most fields cost a tenth of a cent per field per property
  • AVM valuations: $5.00 per request (includes list, sale, and rent estimates plus comparables)
  • Bulk data: Volume pricing available for portfolio monitoring

A typical application costs under $10 - a fraction of manual research or third-party data fees.

Getting started

  1. Sign up for API access - Create an account and get your API key
  2. Review the properties endpoint documentation
  3. Explore the AVM endpoint
  4. Test with sample properties
  5. Contact us for enterprise pricing

The competitive imperative

The mortgage industry is consolidating around technology leaders. Lenders who process applications faster, make better risk decisions, and deliver superior experiences will capture market share. Property data APIs are becoming table stakes.

Ready to modernize your underwriting workflow? Explore Houski's API documentation or contact us.