Practical examples for using the Houski API.
Select the programming language you want to display the code examples in.
curl -X GET "https://api.houski.ca/properties?api_key=YOUR_API_KEY&city=calgary&community_in=Riverbend,McKenzie Towne&country_abbreviation=ca&expand=listings&expand_listing_date_gt=2026-06-13&expand_listing_event_eq=Listed&filter_expand_match=all&page=1&province_abbreviation=ab&results_per_page=3&select=latitude,longitude,community,interior_sq_m"
const houski_recipe_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', 'calgary');
url.searchParams.set('community_in', 'Riverbend,McKenzie Towne');
url.searchParams.set('country_abbreviation', 'ca');
url.searchParams.set('expand', 'listings');
url.searchParams.set('expand_listing_date_gt', '2026-06-13');
url.searchParams.set('expand_listing_event_eq', 'Listed');
url.searchParams.set('filter_expand_match', 'all');
url.searchParams.set('page', '1');
url.searchParams.set('province_abbreviation', 'ab');
url.searchParams.set('results_per_page', '3');
url.searchParams.set('select', 'latitude,longitude,community,interior_sq_m');
const response = await fetch(url);
const data = await response.json();
return data;
}
(async () => {
let data: PropertiesResponse = await houski_recipe_data();
// Log the response
console.log(data);
})();
{
"cache_hit": false,
"cost_cents": 0.48000001907348633,
"data": [
{
"address": "115 Elgin Meadows View SE",
"community": "McKenzie Towne",
"interior_sq_m": 103.58602905273438,
"latitude": 50.905033111572266,
"listings": [
{
"expand_estimate_list_price": 479900,
"expand_listing_date": "2026-06-24",
"expand_listing_event": "Listed",
"property_id": "17ebd341eebebd7"
}
],
"longitude": -113.95819854736328,
"property_id": "17ebd341eebebd7"
},
{
"address": "223 McKenzie Towne Gate SE",
"community": "McKenzie Towne",
"interior_sq_m": 98.01189422607422,
"latitude": 50.913673400878906,
"listings": [
{
"expand_estimate_list_price": 349900,
"expand_listing_date": "2026-06-24",
"expand_listing_event": "Listed",
"property_id": "181f68736325a6ef"
}
],
"longitude": -113.95761108398438,
"property_id": "181f68736325a6ef"
},
{
"address": "192 Riverbend Drive SE",
"community": "Riverbend",
"interior_sq_m": 149.2939453125,
"latitude": 50.97600173950195,
"listings": [
{
"expand_estimate_list_price": 564900,
"expand_listing_date": "2026-07-20",
"expand_listing_event": "Listed",
"property_id": "1b608cebcfa50340"
}
],
"longitude": -114.02500915527344,
"property_id": "1b608cebcfa50340"
}
],
"error": "",
"pagination": {
"current_page": 1,
"has_next_page": true,
"has_previous_page": false,
"page_total": 25
},
"price_quote": false,
"result_total": 74,
"time_ms": 276,
"ui_info": {
"city": "Calgary",
"city_id": "6ec95b53075d062c",
"city_link": "ca/ab/calgary",
"city_slug": "calgary",
"country": "Canada",
"country_abbreviation": "CA",
"country_abbreviation_id": "9ace2b6431b7f1be",
"country_abbreviation_link": "ca",
"country_slug": "canada",
"province": "Alberta",
"province_abbreviation": "AB",
"province_abbreviation_id": "aae1f05a0f89d2c7",
"province_abbreviation_link": "ca/ab",
"province_slug": "alberta"
}
}