!
Endpoints
Aggregate
Auth
AVM
Properties
Location
Search
Map
Predict
Geocoding

API Recipe: Search for properties that have specific permits in a city

Learn how to use the Houski API with practical examples.

Search for permits in a city
In this example, we are retrieving properties that have permit data in Calgary. To search through the permits, we are using a case insensitive regex search the informational content of the permit for the word 'secondary' or 'suite'. Only properties with permit data will be returned when using the filter_expand_match=all parameter. We are then limiting the results per each page to 3. Additionally by using the expand_permit_application_date_gt parameter, we are limiting our search only to permits that have been issued within the last 180 days.
Request
Shell session
curl -X GET "https://api.houski.ca/properties?api_key=YOUR_API_KEY&city=calgary&country_abbreviation=ca&expand=permits&expand_permit_application_date_gt=2025-01-15&expand_permit_content_regex=(?i)\b(secondary|suite)\b&filter_expand_match=all&province_abbreviation=ab&results_per_page=3"
Shell session
curl -X GET "https://api.houski.ca/properties?api_key=YOUR_API_KEY&city=calgary&country_abbreviation=ca&expand=permits&expand_permit_application_date_gt=2025-01-15&expand_permit_content_regex=(?i)\b(secondary|suite)\b&filter_expand_match=all&province_abbreviation=ab&results_per_page=3"
Response
JSON
{
  "cache_hit": false,
  "cost_cents": 0.6500000357627869,
  "data": [
    {
      "address": "7108 Hunterville Road NW",
      "permits": [
        {
          "expand_permit_application_date": "2025-01-29",
          "expand_permit_content": "Status: Issued Permit|Issued date: 2025-02-04T00:00:00.000|Completed date: N/A|Estimated project cost: 88557.86|Permit class: Secondary Suites|Permit type: Residential Improvement Project|Permit type mapped: Building|Work class: Alteration|Work class group: Improvement|Work class mapped: Existing|applicant: N/A|contractor: N/A|estimated project cost: 88557.86|Total square feet affected: N/A|Housing units affected: 1",
          "expand_permit_id": "BP2025-01630",
          "expand_permit_type": "Building",
          "property_id": "10318a64e17f233a"
        },
        {
          "expand_permit_application_date": "2025-01-20",
          "expand_permit_content": "Status: Cancelled|Category: Residential - Secondary Suite|Description: NEW: SECONDARY SUITE (BASEMENT) - PARKING STALL|Proposed use code: C2626|Proposed use description: SECONDARY SUITE|Permitted/discretionary: Permitted with a Relaxation|Land use district: R-CG|Land use district description: Residential - Grade-Oriented Infill|Concurrent LOC: N/A|Decision: N/A|Decision by: N/A|Decision date: N/A|Canceled/refused date: 2025-02-11|SDAB Number: N/A|SDAB hearing date: N/A|SDAB Decision: N/A|SDAB decision date: N/A",
          "expand_permit_id": "DP2025-00348",
          "expand_permit_type": "Development",
          "property_id": "10318a64e17f233a"
        }
      ],
      "property_id": "10318a64e17f233a"
    },
    {
      "address": "1835 13 Avenue NW",
      "permits": [
        {
          "expand_permit_application_date": "2025-04-27",
          "expand_permit_content": "Status: Cancelled|Category: Residential - Multi-Family|Description: NEW: ROWHOUSE BUILDING (2 BUILDING), SECONDARY SUITE (10 SUITES), 1 ACCESSORY RESIDENTIAL BUILDING (GARAGE), 10 BACKYARD SUITE (ABOVE GARAGE)|Proposed use code: C2540|Proposed use description: ROWHOUSE BUILDING|Permitted/discretionary: Discretionary|Land use district: R-CG|Land use district description: Residential - Grade-Oriented Infill|Concurrent LOC: N/A|Decision: N/A|Decision by: N/A|Decision date: N/A|Canceled/refused date: 2025-05-26|SDAB Number: N/A|SDAB hearing date: N/A|SDAB Decision: N/A|SDAB decision date: N/A",
          "expand_permit_id": "DP2025-02460",
          "expand_permit_type": "Development",
          "property_id": "106edb39875f4608"
        },
        {
          "expand_permit_application_date": "2025-04-26",
          "expand_permit_content": "Status: Hold|Category: Residential - Multi-Family|Description: NEW: MULTI-RESIDENTIAL DEVELOPMENT (3 BUILDINGS), SECONDARY SUITE (11 SUITES)|Proposed use code: C1175; C2540; C2626|Proposed use description: BACKYARD SUITE; ROWHOUSE BUILDING; SECONDARY SUITE|Permitted/discretionary: Permitted|Land use district: R-CG|Land use district description: Residential - Grade-Oriented Infill|Concurrent LOC: N/A|Decision: N/A|Decision by: N/A|Decision date: N/A|Canceled/refused date: N/A|SDAB Number: N/A|SDAB hearing date: N/A|SDAB Decision: N/A|SDAB decision date: N/A",
          "expand_permit_id": "DP2025-02454",
          "expand_permit_type": "Development",
          "property_id": "106edb39875f4608"
        }
      ],
      "property_id": "106edb39875f4608"
    },
    {
      "address": "5124 Brisebois Drive NW",
      "permits": [
        {
          "expand_permit_application_date": "2025-04-14",
          "expand_permit_content": "Status: Cancelled|Category: Residential - Secondary Suite|Description: NEW: SECONDARY SUITE (SECONDARY SUITE)|Proposed use code: C2626|Proposed use description: SECONDARY SUITE|Permitted/discretionary: Permitted with a Relaxation|Land use district: R-CG|Land use district description: Residential - Grade-Oriented Infill|Concurrent LOC: N/A|Decision: N/A|Decision by: N/A|Decision date: N/A|Canceled/refused date: 2025-05-08|SDAB Number: N/A|SDAB hearing date: N/A|SDAB Decision: N/A|SDAB decision date: N/A",
          "expand_permit_id": "DP2025-02166",
          "expand_permit_type": "Development",
          "property_id": "10a04e1346636a5f"
        }
      ],
      "property_id": "10a04e1346636a5f"
    }
  ],
  "error": "",
  "pagination": {
    "current_page": 1,
    "has_next_page": true,
    "has_previous_page": false,
    "page_total": 524
  },
  "price_quote": false,
  "result_total": 1570,
  "time_ms": 447,
  "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"
  }
}