← Back to blog
BuildData Now Covers Inspections, Licences, and Development Permits
BuildData started as a Canadian building permit API. It is now something broader: a unified platform for construction and development activity data across Canada. Over the past several weeks, we added four new dataset types, bringing total coverage to over 8 million records across 60+ cities. Here is what changed and why it matters.
Five datasets, one API
Every dataset is accessible through the same endpoints, with the same normalized schema, and the same geographic coverage. The
entity_type parameter selects the dataset. No new authentication, no new base URL, no schema to learn.
Building Permits
3.38M
The original dataset. Issued permits across 60+ cities, with type, status, declared value, area, and geocoordinates.
Inspections
3.5M+
Building inspections from Calgary, Brampton, and Halifax. Pass, fail, or conditional result. Linked to address for cross-dataset joins.
Business Licences
690K
Active and historical business licences from 21 cities. Normalized business name, category, and address. Signals commercial activity at the street level.
Development Permits
368K
Pre-construction approvals from Calgary and Edmonton. Earlier in the pipeline than building permits, with application date and current status.
Planning Applications
147K
Rezoning, variances, and subdivision applications from Toronto, Winnipeg, and other cities. The earliest signal in the development pipeline.
8M+
total records across all 5 dataset types
60+
Canadian cities covered
97
municipal open data sources integrated
The full construction pipeline, in one place
Building permits used to be the single signal available in structured form. They capture a moment well along the construction timeline: after a project has been designed, approved, and financed. With development permits and planning applications now in the database, that window moves earlier.
A large residential development in Calgary typically follows this sequence:
planning_application
Rezoning or land use change
→
development_permit
Site approval
→
permit
Construction begins
→
inspection
Work verified
Each stage is now queryable. Because all records are normalized to a shared address format, records from different datasets can be joined by location. A planning application, a development permit, and the eventual building permits for the same site can be linked by
normalized_address.
A consistent schema across all datasets
Every record in BuildData, regardless of dataset type, carries the same baseline fields: province, municipality, normalized address, latitude and longitude, event date, and a canonical category field specific to that entity type.
For permits, the canonical field is
permit_type_canonical (new_construction, renovation, demolition, addition, and others). For development permits and planning applications, it is status_canonical (approved, pending, refused, cancelled, expired). For inspections, it is result_canonical (pass, fail, conditional). For business licences, it is category_canonical.
This means a query like "all refused development permits in Alberta in 2025" runs the same way as "all failed inspections in Calgary in 2025." The same parameters, the same response structure.
Market Brief now tracks all five datasets
Market Brief is BuildData's weekly intelligence digest: subscribers choose a city and a type of work, and receive a weekly summary of matching activity. It now supports all five dataset types, selectable individually or in combination.
A contractor tracking commercial renovation work in Edmonton can now receive a combined digest covering new permits, active inspections, and recently approved development permits in the same weekly email. The data comes from three separate open data sources, normalized and deduplicated automatically.
Coverage at a glance
Coverage varies by dataset type, reflecting what municipalities actually publish. Building permits have the broadest coverage at 60+ cities. Inspections are currently limited to three cities with machine-readable inspection records. Business licences cover 21 cities. Development permits and planning applications cover major cities in Alberta, Ontario, and British Columbia.
All records include a
province field, making province-level aggregations straightforward without relying on city-to-province lookups on the client side.
Coverage expands as municipalities update their open data portals. The dataset is refreshed daily for most sources.
BuildData is no longer a building permit API. It is a structured window into Canadian construction and development activity, from the first rezoning application to the final inspection. The data is open, normalized, and available through a single REST endpoint.
Access 8M+ records across permits, inspections, licences, development permits, and planning applications.
Get a free API key