---
title: "/v4/features.json"
method: GET
path: "/features.json"
tags: ["features"]
---

# /v4/features.json

`GET /features.json`

## Request

- Base URL: `https://api.nearmap.com/ai/features/v4`
- URL: `https://api.nearmap.com/ai/features/v4/features.json`
- Auth: one of:
  - API key in query parameter `apikey`
  - API key in header `Authorization`
  - API key in header `Authorization`

Returns features, their attributes and optional supplementary data
within the given polygon or address, and date range.

## Query parameters

- `polygon` string
- `since` string
- `until` string
- `order` 'latest' | 'earliest'
- `bulk` boolean
- `packs` string
- `classes` string
- `streetAddress` string
- `city` string
- `state` string
- `zip` string
- `country` 'US' | 'AU'
- `systemVersion` string
- `systemVersionPrefix` string
- `alpha` boolean
- `beta` boolean
- `3dCoverage` boolean
- `parcelMode` boolean
- `rapid` boolean
- `include` string
- `excludePartialResources` boolean
- `postcat` 'true' | 'false' | 'any'
- `damageModelVersion` string

## Headers

- `X-Nearmap-Ext-Reference` string

## Response `200`

OK

- FeatureResult
  - `systemVersion` string, required: The version of the system used to generate the AI data.
  - `resourceId` string, required: The ID of the survey resource.
  - `surveyId` string, required: The survey ID of the survey associated with the survey resource.
  - `surveyDate` string, date, required: The date of the survey capture.
  - `credits` integer, required: The number of credits used for this request.
  - `link` string, required: The MapBrowser link to the location that was requested.
  - `features` Feature[], required: The AI features at the location requested.
    - `id` string, required: The Unique ID of this feature.
    - `classId` string, required: The unique ID for the class of this feature.
    - `description` string, required: A description of the class of this feature.
    - `confidence` number, double, required: The confidence level for this feature.
    - `parentId` string, required: The feature ID of the immediate parent of this feature. This field is always present. An empty string indicates that the feature is a root-level feature with no parent.
    - `geometry` union, required: The geometry of the feature.
      - Point: GeoJSON geometry
        - `type` string, required: The geometry type.
        - `coordinates` number[]
      - Polygon: GeoJSON geometry
        - `type` string, required: The geometry type.
        - `coordinates` array[]
          - Point2D[]
            - number[]
      - MultiPolygon: GeoJSON geometry
        - `type` string, required: The geometry type.
        - `coordinates` array[]
          - array[]
            - Point2D[]
              - …
    - `areaSqm` number, required: The area of the feature geometry, in square meters, rounded to 1 decimal place. Connected features (e.g. lawn grass, medium and high vegetation, etc.) are clipped to the requested AOI and area computed off this clipped geometry. For connected features, this area will always equal clippedAreaSqm. Discrete features (e.g. buildings, swimming pools, etc.) are not clipped to the requested AOI, and the area is computed from the entire feature geometry. For discrete features, this area will always equal unclippedAreaSqm.
    - `areaSqft` number, required: The area of the feature geometry, in square feet, rounded to the nearest integer. Connected features (e.g. lawn grass, medium and high vegetation, etc.) are clipped to the requested AOI and area computed off this clipped geometry. For connected features, this area will always equal clippedAreaSqft. Discrete features (e.g. buildings, swimming pools, etc.) are not clipped to the requested AOI, and the area is computed from the entire feature geometry. For discrete features, this area will always equal unclippedAreaSqft.
    - `clippedAreaSqm` number, required: The area of the feature geometry, clipped to the requested AOI, in square meters, rounded to 1 decimal place.
    - `clippedAreaSqft` number, required: The area of the feature geometry, clipped to the requested AOI, in square feet, rounded to the nearest integer.
    - `unclippedAreaSqm` number, required: The unclipped area of the feature geometry in square meters, rounded to 1 decimal place.
    - `unclippedAreaSqft` number, required: The unclipped area of the feature geometry in square feet, rounded to the nearest integer.
    - `surveyDate` string, date, required: The date of the survey capture.
    - `meshDate` string, required: The date of the 3D mesh used to generate the resource (if applicable). This field is always present. An empty string indicates that the feature was not generated from a 3D mesh; a date string indicates the capture date of the mesh.
    - `attributes` Attribute[], required: The list of attributes related to this feature.
      - `classId` string, required: The unique ID that identifies the class of this attribute.
      - `description` string, required: A description of this class of this attribute.
      - `classStatus` 'prod' | 'alpha' | 'beta': Indicates if the class is a production, alpha, or beta class. This field is only populated if the alpha or beta request query parameters are set to true or a preview release is explicitly requested.
      - `components` AttributeComponent[]: The components of this attribute.
        - `classId` string, required: The unique ID that identifies the class of this attribute component.
        - `description` string, required: A description of this class of this attribute component.
        - `classStatus` 'prod' | 'alpha' | 'beta': Indicates if the class is a production, alpha, or beta class. This field is only present if the alpha or beta request query parameters are set to true or a preview release is explicitly requested.
        - `confidence` number, double: The confidence level for this attribute component.
        - `areaSqm` number, required: The area of the attribute component in square meters, rounded to 1 decimal place.
        - `areaSqft` number, required: The area of the attribute component in square feet, rounded to the nearest integer.
        - `ratio` number, double, required: The ratio of the attribute component area to the parent feature area.
        - `dominant` boolean: Indicates if the attribute component is dominant, relative to other components of the same attribute. This field is omitted if not available.
        - `confidenceStats` RCCS: A collection of statistics that summarize the confidence levels of AI predictions for the condition of a roof. To include this supplementary data in the response, add `roofConditionConfidenceStats` to the `include` query parameter. This property is only present in `Roof Condition` feature attributes. Roof features with a footprint area exceeding 100,000sqm will be skipped and be marked as such. No roof condition confidence statistics will be produced in these cases.
      - `has3dAttributes` boolean: Indicates if the attribute has 3D attribute data, such as roof pitch and building height. Only available for `Building 3d attributes` and `Roof 3d attributes` attribute classes, omitted if not available.
      - `pitch` number, double: The pitch of the roof in degrees. Only available for `Roof 3d attributes` class, omitted if not available.
      - `height` number, double: The height of the building in meters. Only available for `Building 3d attributes` class, omitted if not available.
      - `heightM` number, double: The height of the building in meters. Only available for `Building 3d attributes` class, omitted if not available.
      - `heightFt` number, double: The height of the building in feet. Only available for `Building 3d attributes` class, omitted if not available.
      - `numStories` object: Confidence levels for the number of stories. Only available for `Building 3d attributes` class, omitted if not available.
        - `one` number, double: The confidence level that the building has one story.
        - `two` number, double: The confidence level that the building has two stories.
        - `threePlus` number, double: The confidence level that the building has three or more stories.
      - `available` boolean: Indicates availability of the value of this attribute. Only available for `Ground height` and `Building pitch` attribute classes, omitted if not available.
      - `value` number, double: The value of the attribute. Only available for `Ground height` and `Building pitch` attribute classes, omitted if not available.
    - `classStatus` 'prod' | 'alpha' | 'beta': Indicates if the class is a production, alpha, or beta class. This field is only populated if the alpha or beta request query parameters are set to true or a preview release is explicitly requested.
    - `belongsToParcel` boolean: Indicates if the feature belongs to a parcel. This field is only present if the `parcelMode` query parameter is set to true.
    - `clippedGeometry` union: The clipped geometry of the feature. This field is only present if the `parcelMode` query parameter is set to true and the clipped geometry differs from the (unclipped) geometry.
      - Polygon: GeoJSON geometry
        - `type` string, required: The geometry type.
        - `coordinates` array[]
          - Point2D[]
            - number[]
      - MultiPolygon: GeoJSON geometry
        - `type` string, required: The geometry type.
        - `coordinates` array[]
          - array[]
            - Point2D[]
              - …
    - `roofSpotlightIndex` RSI: The Roof Spotlight Index (RSI) is a proprietary measure of the condition of a roof and factors that might affect its condition. To include this supplementary data in the response, add `roofSpotlightIndex` to the `include` query parameter. This property can only be present on `Roof` and/or `Building Lifecycle` features. While normally added to `Roof` features, under certain conditions where the roof is severely damaged or missing, it may be added to `Building Lifecycle` instead.
      - `value` number: The RSI value in a range of 0 to 100, rounded to the nearest integer.
      - `confidence` number, double: The confidence level for this RSI value, rounded to 2 decimal places.
    - `damage` Damage: Damage classifications provide a measure of the severity of damage to a structure based on FEMA damage classification categories. There are three tiers of classification provided: - 5-tier (or `raw`), based on the FEMA 5-tier classification system composed of `Undamaged`, `Affected`, `Minor`, `Major` and `Destroyed` - 3-tier, composed of `UndamagedOrAffected`, `Minor` and `MajorOrDestroyed` - 2-tier, composed of `UndamagedOrAffectedOrMinor` and `MajorOrDestroyed` To include this supplementary data in the response, add `damage` to the `include` query parameter. Damage is not supported on bulk requests. If the `include` query parameter is set to `damage` when using bulk, the request will be rejected with a 400 Bad Request response. If the `include` query parameter when using bulk is set to `all`, damage will be excluded. This property can only present on `Building Lifecycle` features. If `parcelMode` is set to `true`, the damage classification will be calculated using the clipped geometry of the feature if present. Otherwise, the geometry of the feature will be used with no clipping applied. Features with a footprint area exceeding 100,000sqm or that are not a polygon or multi-polygon geometry will be skipped and be marked as such. No damage classification will be produced for these features. By default, the latest version of the damage model will be used. To specify a particular version of the damage model, use the `damageModelVersion` query parameter.
      - `confidences` object
        - `raw` object: 5-tier damage classification confidence values. Note - values may not sum to 1.0 due to rounding.
          - `Undamaged` number, double: The confidence level that the building is undamaged, rounded to 3 decimal places.
          - `Affected` number, double: The confidence level that the building is affected, rounded to 3 decimal places.
          - `Minor` number, double: The confidence level that the building has minor damage, rounded to 3 decimal places.
          - `Major` number, double: The confidence level that the building has major damage, rounded to 3 decimal places.
          - `Destroyed` number, double: The confidence level that the building is destroyed, rounded to 3 decimal places.
        - `3tier` object: 3-tier damage classification confidence values. Note - values may not sum to 1.0 due to rounding.
          - `UndamagedOrAffected` number, double: The confidence level that the building is undamaged or affected, rounded to 3 decimal places.
          - `Minor` number, double: The confidence level that the building has minor damage, rounded to 3 decimal places.
          - `MajorOrDestroyed` number, double: The confidence level that the building has major damage or is destroyed, rounded to 3 decimal places.
        - `2tier` object: 2-tier damage classification confidence values. Note - values may not sum to 1.0 due to rounding.
          - `UndamagedOrAffectedorMinor` number, double: The confidence level that the building is undamaged or affected or has minor damage rounded to 3 decimal places.
          - `MajorOrDestroyed` number, double: The confidence level that the building has major damage or is destroyed, rounded to 3 decimal places.
      - `ratios` object[]: List of 50% confidence area ratios for each detection class.
        - `classId` string, required: Unique ID for the class of this detection.
        - `ratioAbove50PctConf` number, required: Ratio of the 50% confidence area for the detected class, to total footprint area. Rounded to 3 decimal places.
        - `description` string, required: Description of the class of this detection.
      - `skipped` boolean: Indicates whether the damage classification was skipped for this feature. This happens when the feature footprint exceeds the maximum size for damage classification of 100,000sqm. This field is omitted when processing was not skipped.
    - `defensibleSpace` DefensibleSpace: Provides information about defensible space coverage, area and risk object classes segmented by zones. Zones: Concentric buffered areas surrounding the aoi based on different distances. - Zone 0: 0-5 feet - Zone 1: 5-30 feet - Zone 2: 30-100 feet Risk Object Classes: - Medium and High Vegetation with Woody Vegetation - Yard Debris - Roof To include this supplementary defensible space data in the response, set the `include` query parameter to `defensibleSpace`. This property is returned only for features identified as a `footprint`, which can be either `Roof` (default), or `Building Lifecycle` (fallback, used when Roof is significantly damaged or missing. If parcelMode = true: defensible space is calculated using the clipped geometry of the feature. If parcelMode = false or omitted: the original, unclipped geometry is used.
      - `skipped` boolean: Indicates that the processing for defensible space have been skipped. When this happens, the zone buffers are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `zones` ZoneDefensibleSpace[]: The defensible space zone buffers.
        - `zoneId` integer, required: Unique identifier for the zone.
        - `zoneInnerDistanceM` number, required: Inner boundary of the zone measured from the outer boundary of the building footprint (in meters).
        - `zoneInnerDistanceFt` number, required: Inner boundary of the zone measured from the outer boundary of the building footprint (in feet).
        - `zoneOuterDistanceM` number, required: Outer boundary of the zone measured from the inner boundary of the zone (in meters).
        - `zoneOuterDistanceFt` number, required: Outer boundary of the zone measured from the inner boundary of the zone (in feet).
        - `zoneGeometry` union, required: The geometry of the zone, typically a ring or doughnut shape.
          - Polygon: GeoJSON geometry
            - `type` string, required: The geometry type.
            - `coordinates` array[]
              - …
          - MultiPolygon: GeoJSON geometry
            - `type` string, required: The geometry type.
            - `coordinates` array[]
              - …
        - `zoneAreaSqm` number, required: Total area of zone in square meters.
        - `zoneAreaSqft` number, required: Total area of zone in square feet.
        - `defensibleSpaceAreaSqm` number, required: Area within the zone that is considered defensible space, measured in square meters.
        - `defensibleSpaceAreaSqft` number, required: Area within the zone that is considered defensible space, measured in square feet.
        - `totalRiskObjectAreaSqm` number: Total area occupied by all risk objects in the zone, in square meters.
        - `totalRiskObjectAreaSqft` number, required: Total area occupied by all risk objects in the zone, in square feet.
        - `defensibleSpaceCoverageRatio` number, required: Total area occupied by defensible space with respect to the total zone area.
        - `totalRiskObjectCoverageRatio` number, required: Ratio of risk object area to total zone area.
        - `riskObjects` ZoneRiskObject[]: List of risk objects detected in the zone.
          - `classId` string, required: External feaure class ID.
          - `description` string, required
          - `geometry` union, required: The geometry of the risk object.
            - Polygon: GeoJSON geometry
              - …
            - MultiPolygon: GeoJSON geometry
              - …
          - `areaSqm` number, required: Total coverage area of the risk feature class in the zone in square meters.
          - `areaSqft` number, required: Total coverage area of the risk feature class in the zone in square feet.
          - `ratio` number, required: Ratio of coverage risk feature class with respect to the zone area.
    - `hurricaneScore` HurricaneScore: Provides information about hurricane vulnerability score, probability and risk factor.
      - `skipped` boolean: Indicates that the processing for hurricane score have been skipped. When this happens, the rest of the fields are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `vulnerabilityScore` integer: A 1-5 score representing how well protected the structure is to withstand hurricane force winds, 5 being best protection and 1 being the worst protection / most vulnerable.
      - `vulnerabilityProbability` number: The probability that the building will be damaged if impacted by hurricane force winds.
      - `vulnerabilityRateFactor` number: The rate we have filed with states that can be used to adjust premium up or down based on the hurricane vulnerability (so a 1.55 for a hurricane vulnerability score of 1 means the insurer can charge 55% more premium due to this score).
      - `femaAnnualHurricaneFrequency` number: Annualized average of hurricane events for the census tract the building is located in, according to the FEMA National Risk Index model. Only available for US region.
      - `femaVersion` string: The version of the FEMA model from which the data was taken.
      - `modelInputFeatures` HurricaneModelInputFeatures: The inputs provided to the hurricane model to calculate scores.
        - `defensibleSpaceWeightedCoverage` number: Weighted average of defensible space coverage.
        - `shinglePresent` integer: Represents if asphalt shingles are detected.
        - `hipPresent` integer: Represents if hip roof is detected.
        - `flatPresent` integer: Represents if asphalt shingles are present.
        - `roofStainingRatio` number: Ratio of roof covered by staining.
        - `roofRustingRatio` number: Ratio of roof covered by rust.
        - `wornShinglesRatio` number: Ratio of roof covered by worn shingles.
        - `missingRoofTileOrShingleRatio` number: Ratio of roof covered by missing tiles or shingles.
        - `treeOverhangRatio` number: Ratio of roof covered by tree overhang.
        - `roofPatchingRatio` number: Ratio of roof covered by patching.
    - `windScore` WindScore
      - `skipped` boolean: Indicates that the processing for wind score has been skipped. When this happens, the rest of the fields are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `vulnerabilityScore` integer: Discrete value 1–5 representing how well protected the structure is to withstand wind where 1 is the most vulnerable, and 5 is the least vulnerable.
      - `vulnerabilityProbability` number: Raw model probability that the building will be damaged if impacted by wind. This value is binned into 1-5 wind vulnerability probability score.
      - `vulnerabilityRateFactor` number: Filed rate factor derived from the wind vulnerability score. This value can be used as a rate multiplier to adjust premiums up or down based on building susceptibility to wind damage.
      - `riskScore` integer: Combination of wind vulnerability score and FEMA annual wind frequency where 1 is the most likely to experience a wind claim, and 5 is the least likely to experience a wind claim. Only available for US region.
      - `riskRateFactor` number: Filed rate factor derived from the wind risk score. This value can be used as a rate multiplier to adjust premiums up or down based on building likelihood of wind claim. Only available for US region.
      - `femaAnnualWindFrequency` number: Annualized average of strong wind events for the census tract the building is located in, according to the FEMA National Risk Index model. Only available for US region.
      - `femaVersion` string: The version of the FEMA model from which the data was taken.
      - `modelInputFeatures` WindModelInputFeatures: The inputs provided to the wind model to calculate scores.
        - `pitchedRoofPresent` integer: Boolean: 1 if pitched roof detected.
        - `metalPresent` integer: Boolean: 1 if metal roof detected.
        - `zone1RoofPresent` integer: Boolean: 1 if roof detected in defensible space zone 1.
        - `zone1or2RoofPresent` integer: Boolean: 1 if roof detected in defensible space zone 1 or 2.
        - `compromisedShinglesPresent` integer: Boolean: 1 if compromised shingles detected.
        - `logFootprintArea` number: Log of footprint area.
        - `logCompromisedStructure` number: Log of sum of compromised structure features.
        - `logStaining` number: Log-transformed value of roof staining ratio.
    - `wildfireScore` WildfireScore
      - `skipped` boolean: Indicates that the processing for wildfire score has been skipped. When this happens, the rest of the fields are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `vulnerabilityScore` integer: Discrete value 1–5 representing how well protected the structure is to withstand wildfire where 1 is the most vulnerable, and 5 is the least vulnerable.
      - `vulnerabilityProbability` number: Raw model probability that the building will be damaged if impacted by wildfire. This value is binned into 1-5 wildfire vulnerability probability score.
      - `vulnerabilityRateFactor` number: Filed rate factor derived from the wildfire vulnerability score. This value can be used as a rate multiplier to adjust premiums up or down based on building susceptibility to wildfire damage.
      - `femaAnnualWildfireFrequency` number: The average annual wildfire frequency for the census tract the building is located in, according to the FEMA National Risk Index model. Only available for US region.
      - `femaVersion` string: The version of the FEMA model from which the data was taken.
      - `modelInputFeatures` WildfireModelInputFeatures: Dictionary of model-ready features after transformations.
        - `fireResistantMaterialPresent` integer: Boolean: 1 if fire resistant materials (e.g. clay tile) are present on the roof.
        - `roofDebrisRatio` number: Fraction of roof area with roof debris.
        - `treeOverhangRatio` number: Fraction of roof area with tree overhang.
        - `roofRustingRatio` number: Fraction of roof area with rusting metal.
        - `roofWithTemporaryRepairRatio` number: Fraction of roof area with temporary repairs (e.g. tarps, plywood).
        - `indefensibleSpaceWeightedAverage` number: 1 - (Weighted average of defensible space ratio across zones).
        - `yardDebrisWeightedAverage` number: Weighted average of yard debris ratio across defensible space zones.
    - `hailScore` HailScore
      - `skipped` boolean: Indicates that the processing for hail score has been skipped. When this happens, the rest of the fields are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `vulnerabilityScore` integer: Discrete value 1–5 representing how well protected the structure is to withstand hail where 1 is the most vulnerable, and 5 is the least vulnerable.
      - `vulnerabilityProbability` number: Raw model probability that the building will be damaged if impacted by hail. This value is binned into 1-5 hail vulnerability probability score.
      - `vulnerabilityRateFactor` number: Filed rate factor derived from the hail vulnerability score. This value can be used as a rate multiplier to adjust premiums up or down based on building susceptibility to hail damage.
      - `riskScore` integer: Combination of hail vulnerability score and FEMA annual hail frequency where 1 is the most likely to experience a hail claim, and 5 is the least likely to experience a hail claim. Only available for US region.
      - `riskRateFactor` number: Filed rate factor derived from the hail risk score. This value can be used as a rate multiplier to adjust premiums up or down based on building likelihood of hail claim. Only available for US region.
      - `femaAnnualHailFrequency` number: The average annual hail frequency for the census tract the building is located in, according to the FEMA National Risk Index model. Only available for US region.
      - `femaVersion` string: The version of the FEMA model from which the data was taken.
      - `modelInputFeatures` HailModelInputFeatures: Dictionary of model-ready features after transformations.
        - `flatPresent` integer: Boolean: 1 if flat roof detected.
        - `shinglePresent` integer: Boolean: 1 if shingle roof detected.
        - `logStaining` number: Log-transformed value of roof staining ratio.
        - `logFootprintArea` number: Log of footprint area.
    - `windHailRiskScore` WindHailRiskScore
      - `skipped` boolean: Indicates that the processing for wind and hail risk score has been skipped. When this happens, the rest of the fields are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `riskScore` integer: Combined risk score from wind and hail where 1 is the most likely to experience a wind or hail claim, and 5 is the least likely to experience a wind or hail claim. Only available for US region.
      - `riskRateFactor` number: Filed rate factor derived from the wind and hail risk score. This value can be used as a rate multiplier to adjust premiums up or down based on building likelihood of wind or hail claim. Only available for US region.
      - `modelInputFeatures` WindHailModelInputFeatures: The inputs provided to the wind and hail model to calculate scores.
        - `windRiskScore` integer: The wind risk score used as input to the combined wind and hail model.
        - `hailRiskScore` integer: The hail risk score used as input to the combined wind and hail model.
  - `aggregate` Aggregate: Provides a summary of the AOI by aggregating or unioning relevant features into a single result. This field is used when the user's AOI spans multiple features and a single unified result is required. `aggregate` field is currently only set when defensible space is requested by the user.
    - `defensibleSpace` object: Provides information about defensible space coverage, area and risk object classes segmented by zones for unioned building footprints on the provided AOI. Building footprints are features identified as a `footprint`, which can be either `Roof` (default), or `Building Lifecycle` (fallback, used when Roof is significantly damaged or missing. To include this aggregate defensible space data in the response, set the `include` query parameter to `defensibleSpace`.
      - `skipped` boolean: Indicates that the processing for defensible space have been skipped. When this happens, the zone buffers are omitted. This usually occurs either when the buffer zones, when applied, extend beyond the resource boundary. This field is omitted when processing was not skipped.
      - `zones` ZoneDefensibleSpace[]: The defensible space zone buffers.
        - `zoneId` integer, required: Unique identifier for the zone.
        - `zoneInnerDistanceM` number, required: Inner boundary of the zone measured from the outer boundary of the building footprint (in meters).
        - `zoneInnerDistanceFt` number, required: Inner boundary of the zone measured from the outer boundary of the building footprint (in feet).
        - `zoneOuterDistanceM` number, required: Outer boundary of the zone measured from the inner boundary of the zone (in meters).
        - `zoneOuterDistanceFt` number, required: Outer boundary of the zone measured from the inner boundary of the zone (in feet).
        - `zoneGeometry` union, required: The geometry of the zone, typically a ring or doughnut shape.
          - Polygon: GeoJSON geometry
            - `type` string, required: The geometry type.
            - `coordinates` array[]
              - …
          - MultiPolygon: GeoJSON geometry
            - `type` string, required: The geometry type.
            - `coordinates` array[]
              - …
        - `zoneAreaSqm` number, required: Total area of zone in square meters.
        - `zoneAreaSqft` number, required: Total area of zone in square feet.
        - `defensibleSpaceAreaSqm` number, required: Area within the zone that is considered defensible space, measured in square meters.
        - `defensibleSpaceAreaSqft` number, required: Area within the zone that is considered defensible space, measured in square feet.
        - `totalRiskObjectAreaSqm` number: Total area occupied by all risk objects in the zone, in square meters.
        - `totalRiskObjectAreaSqft` number, required: Total area occupied by all risk objects in the zone, in square feet.
        - `defensibleSpaceCoverageRatio` number, required: Total area occupied by defensible space with respect to the total zone area.
        - `totalRiskObjectCoverageRatio` number, required: Ratio of risk object area to total zone area.
        - `riskObjects` ZoneRiskObject[]: List of risk objects detected in the zone.
          - `classId` string, required: External feaure class ID.
          - `description` string, required
          - `geometry` union, required: The geometry of the risk object.
            - Polygon: GeoJSON geometry
              - …
            - MultiPolygon: GeoJSON geometry
              - …
          - `areaSqm` number, required: Total coverage area of the risk feature class in the zone in square meters.
          - `areaSqft` number, required: Total coverage area of the risk feature class in the zone in square feet.
          - `ratio` number, required: Ratio of coverage risk feature class with respect to the zone area.
  - `geomatchedAddress` string: Matched address used for geocoded requests.
  - `perspective` 'Vert' | 'TrueOrtho', required: The perspective used to generate the AI data.
  - `reference` string: The reference passed in via the X-Nearmap-Ext-Reference request header value, if it is present. It is up to the user to track the semantics of this field. E.g. they may wish to interpret it as an insurance policy ID.
  - `extentMinX` number, required: Approximate minimum longitude of the AOI extent.
  - `extentMinY` number, required: Approximate minimum latitude of the AOI extent.
  - `extentMaxX` number, required: Approximate maximum longitude of the AOI extent.
  - `extentMaxY` number, required: Approximate maximum latitude of the AOI extent.
  - `prerelease` boolean: Indicates whether or not the system version used to serve the request is a preview release. If it's not a preview release, then it's a regular GA release. This field is only populated if the alpha or beta request query parameters are set to true or a preview release is explicitly requested.
  - `isRapidSurveyResource` boolean: Indicates whether or not the survey resource is a rapid survey resource. This field is only present if the `rapid` query parameter is set to true.
  - `versions` Versions: Version information for supplementary data sources. Version information is present only if the supplementary data source has been run.
    - `roofSpotlightIndex` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `damage` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `defensibleSpace` PresentationOnlyVersion: Version information for a supplementary data source that exposes only a presentation version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `hurricaneScore` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `windScore` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `wildfireScore` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `hailScore` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
    - `windHailRiskScore` Version: Version information for a supplementary data source.
      - `modelVersion` string: The version of the AI model that produced the supplementary data. Optional - omitted for supplementary data sources that do not expose a distinct model version.
      - `presentationVersion` string, required: The presentation version of the supplementary data source.
  - `partialResource` boolean: Indicates that the resource only has prediction generated in certain areas of the survey. While it may have coverage in the AOI, it may not have coverage in other areas of the survey boundary.

## Other responses

- `400`: Bad Request. There was a problem with the request parameters.
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found. No data is available matching the request criteria.

---

[API](https://skmtc.dev/nearmap/apis/ai-feature-api.md) - [All operations](https://skmtc.dev/nearmap/apis/ai-feature-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nearmap/apis/ai-feature-api/revisions/0522585e7ef3?raw)
