Map data © OpenStreetMap contributors
Lake Data API · Canada

Lake boundaries for Canada, as clean GeoJSON.

The Neighbourly Lake Data API returns lake and pond polygons for Canada with official names, waterbody type, surface area and pre-simplified geometry for every zoom level. Ontario lakes also link to their depth contours, fish stocking history and fisheries profile.

MultiPolygon GeoJSON3 levels of detailOfficial namesSurface areaViewport queries
Sample recordLive API
Lake Rosseau
Muskoka · Ontario · lake_boundary 2093445
Surface area
6,287 ha
Shoreline
216.9 km
Max depth
89 m
PermanentVerifiedWithin 5 mOntario Hydro Network
Lake polygonsOfficial namesArea & perimeterLow / medium / high LODLinked depth data
Overview

What is the Lake Data API?

It is a REST API that answers "which lakes are here, and what shape are they?" for any map view or coordinate in Canada. Each lake is a MultiPolygon with a stable ID, its official name, waterbody type, permanency, surface area in square metres and perimeter. Geometry comes pre-computed at three levels of detail, so a province-wide map and a single-cottage view both render quickly.

Geometry for every zoom

Pass a map zoom and the API picks the right geometry: low detail (about 1 km tolerance) for zoom 0–6, medium (about 100 m) for 7–10 and high (about 10 m) for 11 and up. Small lakes drop out at wide zooms so the response stays light.

One record, the whole lake

Fetch a lake by ID and the response also carries its aquatic resource profile (thermal regime, depth, fish species), its bathymetry lines and its fish stocking records, where those exist.

Names and quality flags

Records keep the source's official name (off_name), French or national name (nom), permanency, positional accuracy and verification status, so you can show provenance or filter low-confidence shapes.

Fields

What each record contains.

These are the fields the API returns for this layer. Field names match the JSON response exactly.

Field Type Description
id integer Stable Neighbourly lake ID
off_name string Official waterbody name (Ontario Hydro Network)
nom string Name from the national (Statistics Canada) lakes file
wbdy_type string Waterbody type, e.g. Lake
permanency string Permanent or intermittent
area_m2 float Surface area in square metres
sys_perim float Perimeter in metres
accuracy string Positional accuracy, e.g. Within 5 metres
veristt_fl string Verification status
bbox_west … bbox_north float Bounding box of the lake
boundary_geojson_low / _high GeoJSON Pre-simplified MultiPolygon geometry
Endpoints

Query by map view, ID or filter.

All requests go to https://api.neighbourly.io and send your key in the Api-Key header. A viewport is a JSON bounding box, {"southWestLat":…,"southWestLon":…,"northEastLat":…,"northEastLon":…}, URL-encoded.

GET
/api/v1/locations/lake_boundary?viewport={…}&zoom=9&includes_boundaries=true
Lakes intersecting a map viewport, largest first. zoom sets geometry detail and the minimum lake size. Up to 2,000 per request.
GET
/api/v1/locations/lake_boundary/{id}
One lake with geometry, plus its aquatic resource areas, bathymetry lines and fish stocking records.
GET
/api/v1/spatial/lakes
The same lakes as a standard GeoJSON FeatureCollection. Pages of up to 200, with ?fields= and ?sort=.
GET
/api/v1/spatial/lakes/{id}
A single lake as a GeoJSON Feature.
Example response

Real data, straight from the API.

Live response, trimmed. Lake Rosseau has no stocking records or linked contour lines; the contours around it are available by viewport from the bathymetry layer.

  • GeometryMultiPolygon
  • FormatJSON and GeoJSON (WGS84, EPSG:4326)
  • CoverageCanada (detailed shorelines for Ontario)
  • SourceStatistics Canada — Lakes and Rivers Boundary File; Ontario Ministry of Natural Resources (Ontario GeoHub)
  • Per requestUp to 2,000 by viewport; 200 per page on /spatial
  • AuthApi-Key header
GET /api/v1/locations/lake_boundary/2093445?includes_boundaries=false 200 OK
{
  "id":                     2093445,
  "off_name":               "Lake Rosseau",
  "wbdy_type":              "Lake",
  "permanency":             "Permanent",
  "area_m2":                62869536.31,
  "sys_perim":              216947.86,
  "accuracy":               "Within 5 metres",
  "veristt_fl":             "Verified",
  "bbox_west":              -79.6792294,
  "bbox_south":             45.1103364,
  "bbox_east":              -79.5149517,
  "bbox_north":             45.2557129,
  "aquatic_resource_areas": [
    {
      "ara_ident":      "PS-0001-ROS",
      "thermal_regime": "Cold",
      "maximum_depth":  89,
      "mean_depth":     24.0,
      "secchi_depth":   5.6
    }
  ],
  "fish_stocks":            [],
  "bathymetry_lines":       []
}
Who uses it

Where this layer earns its place.

Waterfront real estate

Name the lake on every listing

Resolve a listing's coordinates to the lake it fronts and show the name, size and shoreline length. Buyers searching for "on Lake Rosseau" get an answer without leaving the page.

Insurance

Distance-to-water inputs

Use exact lake polygons, not centroids, to measure how far a property sits from open water. That gives cottage and rural underwriting a cleaner input.

Maps & apps

Fast lake layers at any zoom

Draw lakes on a web map without running your own simplification: ask for the viewport and zoom, and render what comes back.

Analytics

Lake-level market rollups

Group sales, permits or listings by the lake they sit on to compare waterfront markets lake by lake.

Related layers

Works well with.

Every environmental layer shares the same API key, coordinate system and response conventions. Combine them in one integration.

Frequently asked questions

Common questions about the Lake Data API.

What does the Lake Data API return?

Lake and pond polygons as GeoJSON with an ID, official name, waterbody type, permanency, area in square metres, perimeter, accuracy and verification flags, plus a bounding box. A lake fetched by ID also includes its aquatic resource areas, bathymetry lines and fish stocking records where they exist.

Where does the lake data come from?

Two public sources: the Statistics Canada lakes and rivers boundary file for national coverage, and the Ontario Hydro Network waterbody layer from the Ontario Ministry of Natural Resources for detailed Ontario shorelines.

Does it cover all of Canada?

Lake outlines cover Canada through the national file. The detailed shorelines, quality flags and links to depth, fisheries and stocking data are Ontario-only today.

How do I get lakes for a map view?

Call /api/v1/locations/lake_boundary with a viewport (south-west and north-east corners) and your map zoom. Results come back largest first, up to 2,000 per request.

Which coordinate system is used?

WGS84 longitude and latitude (EPSG:4326), the standard for GeoJSON and web maps.

How do I get access?

Request an API key from the dashboard or book a demo. Every request sends the key in the Api-Key header. Pricing is usage-based.

Data sources

Neighbourly normalizes public open data into one schema. Source licences and attribution apply; see our terms.

Add lake data to your product.

Get an API key and query this layer today, or talk to us about coverage and volume.