changedOutput schema / (root)
Previous value: -{
- "properties": {
- "available": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "`false` on no-data responses. Omitted on success — branch on `data !== null` if you want a single discriminator.",
- "title": "Available"
- },
- "data": {
- "anyOf": [
- {
- "description": "Every property-level risk overlay in one call.\n\nOne failing helper doesn't kill the bundle — nulls pass through.\nCustomer is still billed the full bundle price; check each field\nfor null + use X-Request-Id for any support follow-up.",
- "properties": {
- "bushfire": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- }
- ],
- "title": "Bushfire"
- },
- "environment": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 3,
- "name": "Environment",
- "nearest_distance_m": 640,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 640 m away"
- }
- ],
- "title": "Environment"
- },
- "erosion": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 4,
- "name": "Erosion",
- "nearest_distance_m": 245,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 245 m away"
- }
- ],
- "title": "Erosion"
- },
- "flood": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 9,
- "name": "Flood",
- "nearest_distance_m": 257,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 257 m away"
- }
- ],
- "title": "Flood"
- },
- "heritage": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 8,
- "name": "Heritage",
- "nearest_distance_m": 174,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 174 m away"
- }
- ],
- "title": "Heritage"
- },
- "historical_flood": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 2,
- "name": "Historically Flooded",
- "nearest_distance_m": 413,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 413 m away"
- }
- ],
- "title": "Historical Flood"
- },
- "hv_power_line": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 1,
- "name": "HV Power Line",
- "nearest_distance_m": 341,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 341 m away"
- }
- ],
- "title": "Hv Power Line"
- },
- "landslide": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 2,
- "name": "Landslide",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- }
- ],
- "title": "Landslide"
- },
- "mobile_black_spot": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 1,
- "name": "Mobile Black Spot",
- "nearest_distance_m": 812,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "Not on property; nearest 812 m away"
- }
- ],
- "title": "Mobile Black Spot"
- },
- "public_housing": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": true,
- "description": "One hazard overlay found near the property.\n\n**A record means the hazard exists within 1 km — read `on_property` to\nlearn whether it covers the property itself.** Every overlay is searched\ninside a 1 km circle around the address point, so the presence of a\nrecord on its own says only *there is mapped hazard land in this\nneighbourhood*. Most records are proximity hits: the property is not in\nthe zone. Never render \"a bushfire record came back\" as \"this property\nis bushfire-prone\" — check `on_property` first, and quote\n`nearest_distance_m` when it is false.\n\n`on_property` is tested against the address point (the geocoded location\nof the dwelling), not a surveyed parcel boundary, so a zone whose edge\nruns through the block can read false while still clipping the land. It\nis a strong indication, not a statutory answer: nothing here substitutes\nfor a planning certificate.",
- "example": {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "features_within_radius": 25,
- "name": "Fire",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "On property"
- },
- "properties": {
- "area_level": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Layer'` on property risks — a placeholder marking these as map-layer hits rather than statistics for a suburb or region. It is not a geographic level and carries no information; the suburb risk endpoints use this slot for a real one.",
- "title": "Area Level"
- },
- "area_name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Constant `'Risk Layer'` on property risks. Like `area_level`, a placeholder that keeps the row shape consistent with area-based responses — not the name of any actual area, and not the name of the hazard (that is `name`).",
- "title": "Area Name"
- },
- "features_within_radius": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "How many features of this overlay fall inside `search_radius_m`. Separates 'one stray polygon clips the corner of the neighbourhood' from 'the whole area is mapped'. Absent on public-housing records, where each record already is one Census area.",
- "title": "Features Within Radius"
- },
- "geojson": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "GeoJSON FeatureCollection of the hazard polygons for this overlay, ST_Intersection-clipped to a 1km-radius circle around the property and simplified for browser use. Present only when the request passes `?geojson=true`; absent (and the response byte-identical to before) otherwise.",
- "title": "Geojson"
- },
- "geojson_meta": {
- "anyOf": [
- {
- "additionalProperties": true,
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Clip / simplify / truncation metadata for `geojson` (clip_method='1km_radius', radius_m, simplify tolerance, coordinate precision, feature/byte caps, and whether the size cap truncated the output). Present only with `?geojson=true`.",
- "title": "Geojson Meta"
- },
- "name": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Which hazard this record is about — a fixed label per overlay, e.g. 'Fire', 'Flood', 'Historically Flooded', 'Landslide', 'Erosion', 'Heritage', 'Environment', 'HV Power Line', 'Mobile Black Spot', 'Public Housing'. Suitable for display as-is.",
- "title": "Name"
- },
- "nearest_distance_m": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Metres from the property's address point to the nearest feature of this overlay, measured geodesically and reported to the whole metre. `0.0` exactly when `on_property` is true. When `on_property` is false this is how far away the hazard really is — a heritage record at 174 m and one at 950 m are both 'found', and only this field separates them. On public-housing records it is the distance to that record's Census area. Accurate to about 2% and biased very slightly long (it never under-reports the gap); at close range the error is sub-metre.",
- "title": "Nearest Distance M"
- },
- "on_property": {
- "anyOf": [
- {
- "type": "boolean"
- },
- {
- "type": "null"
- }
- ],
- "description": "**Whether the hazard actually covers this property**, as opposed to merely existing nearby. True when a feature of this overlay contains the property's address point. This is the field to gate any 'this property is in a flood/bushfire/heritage zone' statement on — record presence alone only means 'found within `search_radius_m`'.\n\nTwo overlays are line/point data rather than zones — HV power lines (`'HV Power Line'`) and mobile black spots (`'Mobile Black Spot'`) — and for those `on_property` is false for every property by construction; `nearest_distance_m` is the signal there. On public-housing records it marks the one Census area the property actually sits in.",
- "title": "On Property"
- },
- "search_radius_m": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "The radius searched around the property, in metres (1000). Any record you receive was found inside this circle; anything beyond it was not looked for. Present so the presence rule is explicit rather than folklore.",
- "title": "Search Radius M"
- },
- "value": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "A display string summarising this record. On hazard overlays (fire, flood, landslide, erosion, heritage, environment, power lines, black spots) it states the containment result in words — `'On property'`, or `'Not on property; nearest 174 m away'`. It is prose for humans: parse `on_property` and `nearest_distance_m` instead. On public-housing records it is instead a preformatted percentage such as `'3.4%'` (see `value_unit`). Do not parse it as a number without checking `value_unit` first.",
- "title": "Value"
- },
- "value_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "What `value` is measured in, and the flag for whether it is a number at all. Null on hazard overlays, whose `value` is the containment sentence. `'Properties Proportion'` on public-housing records, meaning `value` is the share of dwellings in a nearby small Census area that are public housing, written as a percentage string. Public housing can return several records — one per nearby Census area that clears a minimum share — so expect a list, not a single figure.",
- "title": "Value Unit"
- }
- },
- "title": "RiskRecord",
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "example": [
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "name": "Public Housing",
- "nearest_distance_m": 0,
- "on_property": true,
- "search_radius_m": 1000,
- "value": "14.5%",
- "value_unit": "Properties Proportion"
- },
- {
- "area_level": "Layer",
- "area_name": "Risk Layer",
- "name": "Public Housing",
- "nearest_distance_m": 486,
- "on_property": false,
- "search_radius_m": 1000,
- "value": "3.4%",
- "value_unit": "Properties Proportion"
- }
- ],
- "title": "Public Housing"
- }
- },
- "title": "AllRisks",
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "The endpoint's payload, or `null` when Microburbs has no value."
- },
- "message": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Human-readable explanation. Omitted on success.",
- "title": "Message"
- },
- "reason": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Machine-readable slug naming the no-data condition (e.g. `no_avm_for_GANSW704074813`). Stable per endpoint. Omitted on success.",
- "title": "Reason"
- }
- },
- "title": "ApiResponse[AllRisks]",
- "type": "object",
- "x-fastmcp-top-level-schema": "ApiResponse_AllRisks_"
-}New value: +null