Get the shapes inside an area

Get the shapes of every area inside another, such as all the wards in a local authority, as one GeoJSON FeatureCollection. One request instead of hundreds.

get
/areas/{geography}/{release}/{code}/children/geometry

Good to know

  • Use tier=low or tier=medium for web maps. Large authorities have a lot of detail.
  • geographystringrequired

    A geography type id, e.g. constituency or ward.

  • releasestringrequired

    A boundary release id, e.g. 2024-07-uk-bgc, or latest for the geography's newest release: the one /boundary-releases:resolve chooses for the furthest date. A response to latest names the release it read in Content-Location. A geography whose newest month holds several releases that differ in more than coverage, or that has a release whose id carries no month, is refused with 409 and the releases that could be newest.

  • codestringrequired

    The official source code for the parent area.

  • tierstringoptional

    The generalisation tier applied to every member, as on the geometry route.

    One offullhighmediumlow
    Defaultfull
  • childGeographystringoptional

    Which children to draw, as a geography such as ward or as {geography}/{release}. Required when the area's children are published in more than one geography release, such as a district's wards and its LSOAs, since those overlap one another; the 409 lists the choices.

Returns

AreaChildrenGeometryEnvelope

The children as a FeatureCollection, with any that could not be drawn listed beside it.

  • apiVersionv1required
  • atlasReleasestringrequired

    The immutable /atlas-release releaseId for the artifacts that produced this response.

  • metaobjectrequired
    Show1 child field
    • nextCursorstring | nullrequired

      Opaque cursor for the next page, or null at the end.

  • dataAreaChildrenGeometryrequired
    Show6 child fields
    • typeFeatureCollectionrequired
    • idstringrequired
    • parentArearequired
      Show6 child fields
      • idstringrequired
      • geographystringrequired
      • boundaryReleasestringrequired
      • codestringrequired
      • namestringrequired
      • aliasesstring[]optional
    • collectionobjectrequired

      What the collection holds and on what terms. generalisationMethod is present only above the full tier.

      Show7 child fields
      • membersintegerrequired

        Areas the crosswalk names as contained by the parent.

      • withGeometryintegerrequired

        Of those, how many could be drawn.

      • verticesintegerrequired
      • tierstringrequired
        One offullhighmediumlow
      • toleranceMnumberrequired
      • minEffectiveAreaM2numberrequired
      • generalisationMethodobjectoptional
        Show4 child fields
        • rulestringrequired
        • thresholdstringrequired
        • partsstringrequired
        • sharedBordersstringrequired
    • withoutGeometryobject[]required

      Members published as a relationship that could not be drawn, each with the reason. Empty when the collection is complete.

      Show5 child fields
      • idstringrequired
      • geographystringrequired
      • boundaryReleasestringrequired
      • codestringrequired
      • reasonstringrequired
    • featuresAreaChildGeometryFeature[]required
      Show4 child fields
      • typeFeaturerequired
      • idstringrequired
      • propertiesArearequired
        Show9 child fields
        • idstringrequired
        • geographystringrequired
        • boundaryReleasestringrequired
        • codestringrequired
        • namestringrequired
        • aliasesstring[]optional
        • membershipobjectrequired

          The published crosswalk that places this area in the collection.

        • generalisationobjectrequired

          What the collection's tier cost this member. The tier itself is stated once, on the collection.

        • geometrySourceGeometrySourcerequired

          Where the served WGS84 geometry came from. transformation is present only when the source was reprojected.

      • geometryGeoJsonGeometryrequired

        A GeoJSON geometry object as read from the raw cached source, or a GeometryCollection when the source represents one area code as more than one feature fragment.

        Show3 child fields
        • typestringrequired
        • coordinatesanyoptional

          Present on every geometry type except GeometryCollection.

        • geometriesGeoJsonGeometry[]optional

          Present only when type is GeometryCollection.

  • 400The tier requested is not one of the named tiers.
  • 404Either no compiled area matches that identity, or no published relationship names anything as contained by it.
  • 409The area's children are published in more than one geography release and childGeography does not choose one; choices lists them.
  • 503The area exists but its geometry cannot be served: no raw source is declared, or its CRS has no transformation to WGS84.

Every error has the same shape. See Errors for how to handle them.

Show the precise behaviour

Returns the geometry of every area a published crosswalk names as contained by this one, as a single FeatureCollection: all the wards in a local authority in one request rather than one request each. Each feature carries its own identity, the crosswalk that places it in the collection, and its geometry provenance.

Membership is a published crosswalk's claim, not a geometric test run at request time, so this returns what the Atlas has published rather than what a point-in-polygon sweep would find. An area with no published containment relationship is a 404, not an empty collection.

tier generalises every member, exactly as on the geometry route, and is the reason this endpoint is usable at all for a large authority. The method is reported once for the collection rather than on each member; each member reports only what the tier cost it, so one that lost an island can be told from one that did not. Note the caveat that travels with it: members are generalised one at a time, so above full neighbours in the same collection may disagree along a shared border.

A member that is published as a relationship but has no servable geometry is listed in withoutGeometry with the reason, rather than being passed over. collection.members and collection.withGeometry disagreeing is how a caller tells a partial collection from a complete one; the response is still a 200.