curl "https://api.northaxiumdata.ca/api/v1/zone?lat=43.6532&lng=-79.3832&municipality=toronto" \
-H "X-API-Key: <your-api-key>"
import requests
url = "https://api.northaxiumdata.ca/api/v1/zone"
headers = {"X-API-Key": "<your-api-key>"}
params = {
"lat": 43.6532,
"lng": -79.3832,
"municipality": "toronto",
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
const fetch = require('node-fetch');
const url = new URL('https://api.northaxiumdata.ca/api/v1/zone');
url.search = new URLSearchParams({
lat: '43.6532',
lng: '-79.3832',
municipality: 'toronto'
});
fetch(url, {
headers: {
'X-API-Key': '<your-api-key>'
}
})
.then(res => res.json())
.then(json => console.log(json));
{
"data": {
"record_id": "a0b1c2d3e4f5",
"municipality": "toronto",
"province": "ON",
"zone_code": "CR",
"zone_description": "Commercial Residential",
"zone_category": "mixed_use",
"source_dataset": "toronto zoning area",
"source_url": "https://ckan0.cf.opendata.inter.prod-toronto.ca/...",
"last_updated": "2026-04-16T12:34:56"
}
}
{
"error": {
"code": "BAD_REQUEST",
"message": "lat and lng are required."
}
}
{
"error": {
"code": "UNAUTHORIZED",
"message": "Missing API key. Pass your key in the X-API-Key header."
}
}
{
"error": {
"code": "NOT_FOUND",
"message": "Zone not found."
}
}
Zoning
Zoning Lookup
Look up the zoning classification at a latitude and longitude for covered municipalities.
GET
/
api
/
v1
/
zone
curl "https://api.northaxiumdata.ca/api/v1/zone?lat=43.6532&lng=-79.3832&municipality=toronto" \
-H "X-API-Key: <your-api-key>"
import requests
url = "https://api.northaxiumdata.ca/api/v1/zone"
headers = {"X-API-Key": "<your-api-key>"}
params = {
"lat": 43.6532,
"lng": -79.3832,
"municipality": "toronto",
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
const fetch = require('node-fetch');
const url = new URL('https://api.northaxiumdata.ca/api/v1/zone');
url.search = new URLSearchParams({
lat: '43.6532',
lng: '-79.3832',
municipality: 'toronto'
});
fetch(url, {
headers: {
'X-API-Key': '<your-api-key>'
}
})
.then(res => res.json())
.then(json => console.log(json));
{
"data": {
"record_id": "a0b1c2d3e4f5",
"municipality": "toronto",
"province": "ON",
"zone_code": "CR",
"zone_description": "Commercial Residential",
"zone_category": "mixed_use",
"source_dataset": "toronto zoning area",
"source_url": "https://ckan0.cf.opendata.inter.prod-toronto.ca/...",
"last_updated": "2026-04-16T12:34:56"
}
}
{
"error": {
"code": "BAD_REQUEST",
"message": "lat and lng are required."
}
}
{
"error": {
"code": "UNAUTHORIZED",
"message": "Missing API key. Pass your key in the X-API-Key header."
}
}
{
"error": {
"code": "NOT_FOUND",
"message": "Zone not found."
}
}
Look up the zoning polygon that intersects a point. Returns the smallest matching polygon at the given coordinate to prefer the most specific classification. Available for 10 cities — see Municipal Intelligence Coverage for the full city list.
If no polygon directly intersects the coordinate — for example, when a point falls on a road boundary or gap between zones — the API returns the nearest polygon within 150 metres. If nothing is found within 150 metres, the endpoint returns
404.Query Parameters
number
required
Latitude in decimal degrees. Example:
43.6532.number
required
Longitude in decimal degrees. Example:
-79.3832.string
Optional municipality slug. One of
toronto, calgary, edmonton, vancouver, winnipeg, ottawa, mississauga, kitchener, hamilton, or quebec_city. Example: toronto.curl "https://api.northaxiumdata.ca/api/v1/zone?lat=43.6532&lng=-79.3832&municipality=toronto" \
-H "X-API-Key: <your-api-key>"
import requests
url = "https://api.northaxiumdata.ca/api/v1/zone"
headers = {"X-API-Key": "<your-api-key>"}
params = {
"lat": 43.6532,
"lng": -79.3832,
"municipality": "toronto",
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
const fetch = require('node-fetch');
const url = new URL('https://api.northaxiumdata.ca/api/v1/zone');
url.search = new URLSearchParams({
lat: '43.6532',
lng: '-79.3832',
municipality: 'toronto'
});
fetch(url, {
headers: {
'X-API-Key': '<your-api-key>'
}
})
.then(res => res.json())
.then(json => console.log(json));
zone_description and zone_category coverage varies by city. Some municipalities publish only a zone code with no accompanying description. Where source data is ambiguous, zone_category may be null.{
"data": {
"record_id": "a0b1c2d3e4f5",
"municipality": "toronto",
"province": "ON",
"zone_code": "CR",
"zone_description": "Commercial Residential",
"zone_category": "mixed_use",
"source_dataset": "toronto zoning area",
"source_url": "https://ckan0.cf.opendata.inter.prod-toronto.ca/...",
"last_updated": "2026-04-16T12:34:56"
}
}
{
"error": {
"code": "BAD_REQUEST",
"message": "lat and lng are required."
}
}
{
"error": {
"code": "UNAUTHORIZED",
"message": "Missing API key. Pass your key in the X-API-Key header."
}
}
{
"error": {
"code": "NOT_FOUND",
"message": "Zone not found."
}
}