Area pages
Breadcrumbs that are always right
One call turns a code into its full chain: neighbourhood, district, region, country. Hang crime, census or your own stats off each level.
GET /areas/{code}/ancestors
Ten levels of UK geography, from output area to country, across all four nations. One call returns everything above an area or inside it. The same code keys the vector tiles and joins onto census, IMD and your own tables.
Starts from an official area code today. Postcode entry and name search are next.
Source: Office for National Statistics licensed under the Open Government Licence v.3.0. Contains OS data © Crown copyright and database right 2025.
OA
235,243
LSOA
46,844
MSOA
9,448
Parish
11,338
Ward
8,485
BUA
7,775
LAD
361
County/UA
153
Region
9
Country
4
What you build
Every area knows what contains it and what sits inside it. That one fact is the area page, the league table, the national map, and a join that survives.
Area pages
One call turns a code into its full chain: neighbourhood, district, region, country. Hang crime, census or your own stats off each level.
GET /areas/{code}/ancestors
Analytics
List every area inside any other. Score at LSOA, rank within the council, report by region, and every total lands on the right parent.
GET /areas/{code}/descendants?descendantType=lsoa
Maps
Councils zoomed out, wards mid-zoom, LSOAs up close. One layer per tier, and the polygons carry the same codes as your data, so no geometry leaves your warehouse.
vector tiles · one layer per tier · MapLibre
Your stack
Store code, type and vintage instead of names or polygons. Territories, alerts, search facets and cache keys all become one lookup on the same chain.
GET /areas/{codes} · up to 100 per call
Coverage
Each area is named as its own publisher names it, at the vintage release 2025.1 declares. A blank cell means the publisher drew nothing there.
| Tier | England | Wales | Scotland | N. Ireland | Areas |
|---|---|---|---|---|---|
| OAmicro | oa @2021 | oa @2021 | sct_oa @2022 | none published | 235,243 |
| LSOAsmall_area | lsoa @2021 | lsoa @2021 | sct_dz @2022 | nir_dz @2021 | 46,844 |
| MSOAmid_area | msoa @2021 | msoa @2021 | sct_iz @2022 | nir_sdz @2021 | 9,448 |
| Parishparish | parish @2025 | parish @2025 | none published | none published | 11,338 |
| Wardward | ward @2025 | ward @2025 | ward @2025 | nir_dea @2014 | 8,485 |
| BUAbua | bua @2024 | bua @2024 | none published | none published | 7,775 |
| LADltla | lad @2025 | lad @2025 | sct_ca @2019 | nir_lgd @2014 | 361 |
| County/UAutla | cty_ua @2025 | England only | England only | England only | 153 |
| Regionregion | region @2025 | England only | England only | England only | 9 |
| Countrycountry | country @2025 | country @2025 | country @2025 | country @2025 | 4 |
The API
Everything is a GET against the release your key is pinned to.
Current limits
No postcode entry point yet. The graph starts at a GSS code.
Westminster constituencies are registered but not yet in a release.
Northern Ireland has no micro tier: NISRA publishes no correspondence for it.
GET /v1/geography/areas/E01000001/ancestors
{
"object": "list",
"data": [
{ "code": "E02000001", "areaType": "msoa",
"vintage": "2021", "tier": "mid_area",
"name": "City of London 001",
"depth": 1, "minFit": "exact" },
{ "code": "E09000001", "areaType": "lad",
"vintage": "2025", "tier": "ltla",
"name": "City of London",
"depth": 2, "minFit": "best_fit" },
{ "code": "E12000007", "areaType": "region",
"vintage": "2025", "tier": "region",
"name": "London",
"depth": 3, "minFit": "best_fit" },
{ "code": "E92000001", "areaType": "country",
"vintage": "2025", "tier": "country",
"name": "England",
"depth": 4, "minFit": "best_fit" }
],
"has_more": false,
"total_count": 4
}The guarantees
Open Government Licence v3.0 throughout. Build and resell on it: no negotiation, no pass-through, and every served polygon passes a code-enforced redistribution gate.
Every record returns its required attribution line verbatim, so compliance is a string you print, not a policy you research.
Every parent link is stamped with the source whose claim won, back to the publisher's file and its checksum.
Your responses come from one declared release until you move the pin. When publishers merge districts or rename columns, you adopt the change deliberately, with every difference in a change ledger.
Sources: ONS, NRS, NISRA and the Scottish Government · Open Government Licence v3.0