Property Data API

Canadian Property Data API.
One address, every record.

A property is more than its listing. Every building permit, property assessment, zoning designation, business licence, inspection, and development permit at an address now joins on one canonical normalized address key. Query a single Canadian property data API and get the full record back, no stitching together a dozen municipal portals by hand.

16M+property records
8datasets, one schema
60+cities across Canada
1canonical address key

One address, every record

No other Canadian property data API unifies permits, assessments, zoning, and licences under one key. Resolve an address to coordinates and a canonical key, then fan out to every dataset for that property. The result is a complete property timeline from a handful of requests.

# 1. Resolve the address to coordinates and a canonical key
GET /geocode?address=110+9+Ave+SE,+Calgary,+AB
  → { lat: 51.0452, lng: -114.0625, normalized_address: "110 9 ave se calgary ab" }

# 2. Zoning at that point
GET /zone?lat=51.0452&lng=-114.0625
  → { zone_code: "CC-X", zone_name: "Centre City Mixed Use" }

# 3. Assessed value for the property
GET /assessment?municipality=calgary&address=110+9+Ave+SE
  → { assessed_value, land_value, lot_size_sf, year_built, property_class }

# 4. Full building permit history
GET /permit?municipality=calgary&address=110+9+Ave+SE
  → [ { permit_type, value, issued_date, status, contractor }, ... ]

# 5. Businesses licensed at that address
GET /licence?municipality=calgary&address=110+9+Ave+SE
  → [ { business_name, licence_type, status }, ... ]

Every endpoint shares the same normalized address fields, so the join is reliable even when each source spells the address differently. Where a parcel identifier or assessment roll number exists, records link on that too.

What you get

Eight datasets, one API key, one schema. Each is queryable on its own or joined to the rest on the canonical address.

DatasetWhat it adds to the property record
Building permitsNew builds, renovations, demolitions: permit type, value, status, dates, and contractor.
Property assessmentsAssessed value, land and improvement value, lot size, year built, and property class.
ZoningZone code and designation at any coordinate, with what the parcel is allowed to be.
Business licencesBusinesses operating at the address, their licence type, and status.
InspectionsInspection records and outcomes tied to permit and property activity.
Development permitsLand-use and development approvals ahead of construction.
ContractorsThe firms behind the permits, linked to the work they pulled at each property.
Planning & coveragePer-city and per-dataset coverage so you know what is available where.

Who uses it

Property valuation & AVMs

Feed assessed value, lot size, year built, and permit history into automated valuation models and comparables. The permit timeline shows whether a property has been renovated since its last sale, a signal listings miss.

Mortgage & insurance underwriting

Validate a stated value against the public roll, check zoning and use class, and surface major renovations or unpermitted work. One address call returns the property context underwriters need to price risk.

Proptech & real-estate platforms

Enrich any listing or address in your product with a full property record from one API. Skip building dozens of municipal scrapers and reconciling addresses by hand. One key, one schema, national coverage.

B2B sales & lead generation

Find high-value or older properties, large lots, or recent permit activity, then attach the businesses, contractors, and assessed values at each address. Build targeted lists joined on the property, not guesswork.

Frequently asked questions

What is a property data API?

A property data API is a REST interface that returns structured records about a property from a single request. BuildData's property data API resolves any Canadian address to its full record: building permits, property assessments, zoning, business licences, inspections, and development permits. Instead of stitching together a dozen municipal portals, you query one endpoint and get back a clean, normalized JSON record.

How do you join permits, assessments, and zoning?

Every record from every source is run through one address normalization pipeline that produces a canonical address key. Permits, assessments, zoning, licences, inspections, and development permits for the same property all carry the same key, so they join cleanly even when the source data spells the address differently. Where a parcel identifier or assessment roll number is published, we link on that too.

How do I look up everything for an address?

Call /geocode with the address to resolve it to coordinates and a canonical address key, then query /permit, /assessment, /zone, and /licence with that key or those coordinates. Each endpoint returns the records tied to the property, giving you a full property timeline from one address in a few requests.

Which Canadian cities and provinces are covered?

Building permits cover 60+ municipalities across Canada. Property assessments span Quebec and New Brunswick province-wide plus cities in Alberta, British Columbia, Manitoba, and Nova Scotia. Zoning, business licences, inspections, and development permits are available wherever the municipality publishes them. See the coverage page for the current per-dataset list.

Is it free?

Yes, there is a free tier. You can start with 25 requests per day at no cost and no credit card through RapidAPI. Paid plans raise the limits, and the full dataset is also available on the Snowflake Marketplace for warehouse-native access.

Get the full property record for any address

No credit card required. Full API access via RapidAPI, OpenAPI spec and docs included.

Part of the BuildData Canadian construction data platform. Drill into assessments, zoning, business licences, or see all coverage.