Find areas at a point
Which ward is this spot in? Give a longitude and latitude and get the area, or areas, of one geography that contain it.
/areas:containsGood to know
- A point exactly on a border belongs to both sides, so you can get more than one result. Those are labelled
boundary.
lngstringoptionalLongitude in WGS 84 decimal degrees, -180 to 180. Written as a plain decimal: its decimal places are read as its precision.
lonstringoptionalAlias for
lng, the WGS 84 longitude in decimal degrees.longitudestringoptionalAlias for
lng, the WGS 84 longitude in decimal degrees.latstringoptionalLatitude in WGS 84 decimal degrees, -90 to 90, as for
lng.crsstringoptionalThe input coordinate reference system. The default
EPSG:4326useslngandlat;EPSG:27700uses British National Grideastingandnorthingor an Ordnance Surveygridref;EPSG:29902uses Irish Grideastingandnorthing.One ofEPSG:4326EPSG:27700EPSG:29902DefaultEPSG:4326eastingstringoptionalEasting in grid metres. Required with
crs=EPSG:27700orcrs=EPSG:29902; do not combine it with WGS 84lng/lat.northingstringoptionalNorthing in grid metres. Required with
crs=EPSG:27700orcrs=EPSG:29902; do not combine it with WGS 84lng/lat.gridrefstringoptionalA two-letter Ordnance Survey National Grid reference, followed by an even number of digits from 2 to 10, for example
TQ 30000 80000. Use only withcrs=EPSG:27700; do not combine it witheastingornorthing. A grid reference denotes a square, represented by its cell centre with the cell's half-diagonal included in uncertainty.postcodestringoptionalA unit postcode such as
SW1A 1AA, the space optional, in place of a coordinate. It cannot be combined withlng,lat,easting,northing,gridref,crsoraccuracy.geographystring[]optionalA geography to look the point up in. Repeat it or give a comma-separated list, up to four in total. A geography named only in a pinned
releaseneed not be repeated here.releasestring[]optionalA release to pin, as
{geography}/{release}, such asward/2025-12-uk-bgc, orward/latestfor its newest unambiguous published release. A bare release id is accepted when exactly one geography is requested. A pinned release is used whateverdatesays.datestringoptionalA calendar date as
YYYY-MM-DD, or a month asYYYY-MM. Every geography without a pinned release uses the latest release dated on or before it; without a date it uses the newest unambiguous published release. The country boundaries used to place a point that matches nothing are chosen the same way.accuracynumberoptionalHow far the true position may lie from the coordinate, in metres, such as a GPS fix's reported accuracy. Without it, uncertainty is half the coordinate's last written decimal place, which overstates it where a client drops trailing zeros.
Returns
PointContainmentEnvelopeEach requested geography's containing areas, or why there are none.
apiVersionv1requiredatlasReleasestringrequiredThe immutable
/atlas-releasereleaseIdfor the artifacts that produced this response.metaobjectrequiredShowHide1 child field
nextCursorstring | nullrequiredOpaque cursor for the next page, or null at the end.
dataPointContainmentrequiredShowHide7 child fields
postcodeobjectoptionalPresent when the point is a postcode's centroid.
ShowHide5 child fields
postcodestringrequiredstatusenumrequiredOne ofliveterminatedhrefstringrequiredcautionstringoptionalPresent when the directory does not state how accurate the centroid is.
sourceobjectrequiredShowHide5 child fields
titlestringoptionaleditionstringoptionalpublisherstringoptionallicenceanyoptionalattributionstringoptional
pointLookupPointrequiredShowHide5 child fields
lngnumberrequiredlatnumberrequiredcrsEPSG:4326requiredprecisionobjectrequiredShowHide3 child fields
decimalPlacesobjectrequireduncertaintyMnumberrequiredHow far the true position may lie from the coordinate, in metres.
basisstringrequiredOne ofstated-accuracydecimal-placesstated-accuracy-and-transformationdecimal-places-and-transformationgrid-reference-and-transformationstated-accuracy-and-grid-reference-and-transformation
inputobjectoptionalPresent when British National Grid or Irish Grid input was transformed to WGS 84.
ShowHide5 child fields
crsenumrequiredOne ofEPSG:27700EPSG:29902eastingnumberrequirednorthingnumberrequiredgridReferenceobjectoptionalPresent when an Ordnance Survey National Grid reference was supplied.
transformationobjectrequired
datestringoptionalcountryPointCountryrequiredThe UK country the point lies in.
area-codereads it from a matched area's GSS code;country-boundarytests the point against a country release, and a nullcodethere means no UK country contains it.ShowHide5 child fields
codestring | nullrequiredOne ofGB-ENGGB-NIRGB-SCTGB-WLSnulldeterminedBystringrequiredOne ofarea-codecountry-boundaryundeterminedareastringoptionalboundaryReleasestringoptionaldetailstringoptional
boundaryRuleincludedrequiredresultsPointLookupRelease[]requiredOne per requested geography, in the order requested.
ShowHide15 child fields
geographystringrequiredboundaryReleasestringoptionalhrefstringoptionalselectionobjectrequiredShowHide4 child fields
policystringrequiredOne ofpinnedlatest-release-dated-on-or-beforedatestringoptionalsameMonthbooleanoptionalnextReleaseReference | nulloptional
coverageobjectoptionalShowHide1 child field
countriesstring[]required
boundaryResolutionobjectoptionalHow much the boundary's lines were generalised, read from the ONS release name.
undeclaredwhere the name does not say.ShowHide4 child fields
generalisationstringrequiredextentstringoptionalOne ofclipped-to-coastlinefull-extent-of-realmtoleranceMnumberoptionalbasisons-release-nameoptional
geometrySourceGeometrySourceoptionalWhere the served WGS84 geometry came from.
transformationis present only when the source was reprojected.ShowHide3 child fields
sourceCrsstringrequiredtransformationobjectoptionalcorrectionsobject[]optionalDeclared grid corrections that moved this area before it was reprojected, such as
northern-ireland-offset.
sourceobjectoptionalShowHide2 child fields
publisherstringoptionallicenceobjectoptional
statusstringrequiredOne ofmatchedno-matchoutside-coverageambiguous-releaseno-release-for-dategeometry-unavailabledetailstringoptionalchoicesReleaseReference[]optionalShowHide5 child fields
idstringrequiredmonthstringrequiredtitlestringrequiredcountriesstring[]requiredhrefstringrequired
earliestReleaseReferenceoptionalShowHide5 child fields
idstringrequiredmonthstringrequiredtitlestringrequiredcountriesstring[]requiredhrefstringrequired
reasonstringoptionalOne ofcountry-not-coveredoutside-uk-boundariespositionalToleranceMnumberoptionalCoordinate uncertainty, boundary generalisation and transformation accuracy added together, in metres.
matchesobject[]requiredShowHide9 child fields
idstringrequiredcodestringrequirednamestringrequiredaliasesstring[]optionalcontainmentstringrequiredOne ofinteriorboundarydistanceToBoundaryMnumberrequiredMetres from the point to the area's nearest edge.
nearBoundarybooleanrequiredThe edge lies within
positionalToleranceM.geometrySourceGeometrySourceoptionalWhere the served WGS84 geometry came from.
transformationis present only when the source was reprojected.correctionsobject[]optional
notestringrequired
- 400The point is missing, malformed or out of range; a postcode is not a unit postcode, or is given with a coordinate; more than four geographies are named; a geography has neither a pinned release nor a date; a bare release id is given with several geographies; or
dateoraccuracyis malformed. - 404A pinned release is not published or not compiled, or a geography is unknown; or the postcode is not in the directory edition served, or the directory gives it no grid reference.
- 451The postcode is in Northern Ireland, which this API is not licensed to serve.
- 503The referenced build artifact has not been built yet.
Every error has the same shape. See Errors for how to handle them.
Show the precise behaviourHide the precise behaviour
Tests a point against one boundary release of each requested geography, at most four in one request, and says for each what contains it or why nothing does.
Supply WGS 84 lng (also accepted as lon or longitude) and lat (the default), or set crs=EPSG:27700 and supply British National Grid easting and northing or an Ordnance Survey gridref such as TQ 30000 80000. Set crs=EPSG:29902 for Irish Grid metres. Or give a unit postcode instead of a coordinate: it is placed by its ONS Postcode Directory centroid, with the directory's own stated accuracy, exactly as /postcodes/{postcode} places it, and the answer names the postcode. A grid reference denotes a square, so its answer uses the cell centre and includes its whole half-diagonal as uncertainty. Every answer is normalised to WGS 84 and retains the input coordinate and named transformation.
Each geography's release is either pinned, as release={geography}/{release}, chosen for date as the latest one dated on or before it, or defaults to the newest unambiguous published release. With neither geography nor release, the lookup covers localAuthority, ward and constituency. Every result states its selection policy. A date no release fits, or one several releases of the same month fit equally, is reported in that geography's result as no-release-for-date or ambiguous-release rather than failing the whole lookup.
Points on an exterior or hole ring are included and labelled boundary, so a point on a shared border returns every area sharing it. A result with no match is outside-coverage when the point's country is outside the release's coverage, or outside every UK country boundary, and no-match when the release covers the point's country but no area of it contains the point. The country comes from a matched area's code where one has it, and otherwise from the country boundaries, and country.determinedBy says which.
Every result states how far its answer can be trusted. positionalToleranceM adds the coordinate's uncertainty, taken from accuracy or else from its written decimal places, the boundary's generalisation, read from the ONS release name, and the stated accuracy of any transformation from the source CRS to WGS 84. A match whose edge lies within that tolerance is nearBoundary. The geometry's source file, hash, CRS and transformation are given for each release and each match.
Each release is read into memory on first use, which can take a second or more for a large release; later lookups against it are fast.