
Property Hazard & Site Risk Report
Before an agent recommends, underwrites or screens a US property, reads free public federal hazard data for a street address or lat/lon: Census geocode, FEMA National Flood Hazard Layer flood zone, SFHA status and base flood elevation, USGS ASCE 7-22 seismic design values, FEMA National Risk Index tract ratings (wildfire, hurricane, tornado and more), OpenFEMA county disaster declarations for 10 years, and EPA Superfund NPL, brownfield and Toxics Release Inventory sites nearby. A fixed rule table turns them into GO, CAUTION or NO_GO with every factor's raw value, points, source URL and fetch time; an optional intended use (residential, commercial, industrial, development) reweights it. Abstains with INSUFFICIENT_DATA when a layer fails and the rest looks clear, and reports which layers failed. No LLM. NOT covered, and never inferred: zoning, setbacks, permitted use, building permits, assessor and parcel records (no national API), parcel-level elevation, soil or contamination assessment. Screening only; not a flood determination, appraisal or advice.
What you get
A real-estate, lending or siting agent gets a signed, source-linked hazard screen with explicit gaps, instead of a model guessing at flood zones or stitching seven government APIs together.
Call it
Send the JSON body below to https://agents.writerslogic.com/api/v1/property-risk. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.
curl -i -X POST https://agents.writerslogic.com/api/v1/property-risk \
-H 'content-type: application/json' \
-d '{"address":"1111 Lincoln Rd, Miami Beach, FL 33139","intended_use":"residential"}'
Input
| Field | Type | Required | Description |
|---|---|---|---|
address | string; length 5..200 | no | US street address with city and state or ZIP, e.g. 1111 Lincoln Rd, Miami Beach, FL 33139. Give this or lat with lon. |
lat | number; -90..90 | no | Latitude in WGS84 degrees; give with lon instead of address. |
lon | number; -180..180 | no | Longitude in WGS84 degrees; give with lat. |
intended_use | string; one of "residential", "commercial", "industrial", "development" | no | Optional. Reweights the score: residential counts environmental proximity 1.5x, industrial 0.5x, development counts flood and seismic 1.5x. |
Example request body
{
"address": "1111 Lincoln Rd, Miami Beach, FL 33139",
"intended_use": "residential"
}
Result
The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.
| Field | Type | Required | Description |
|---|---|---|---|
verdict | string; one of "GO", "CAUTION", "NO_GO", "INSUFFICIENT_DATA" | yes | Rule-based site-risk screen. NO_GO: a hard stop (FEMA coastal V zone) or weighted score at or above no_go_at. CAUTION: score at or above caution_at. GO: below caution_at with every layer answered. INSUFFICIENT_DATA: a layer failed and the available data did not already reach CAUTION. |
score | number | yes | Sum of weighted factor points; lower is safer. |
thresholds | object | yes | |
reasons | array<string> | yes | |
hard_stops | array<string> | yes | |
summary | string | yes | |
next_step | string | yes | |
intended_use | one of | no | |
weights | object | no | Category multipliers applied to factor points. |
location | object | yes | |
factors | array<object> | yes | Every contributing factor with raw value, points, weight, basis, source URL and fetch time. |
layers | array<object> | yes | |
failed_layers | array<string> | yes | |
partial | boolean | yes | |
notes | array<string> | no | |
details | object | yes | Parsed per-layer results: flood (zone, SFHA, base flood elevation), seismic, national_risk_index, disaster_declarations, superfund_npl, brownfields, toxics_release_inventory. Null where the layer failed. |
not_checked | array<object> | yes | What this report does not cover, stated plainly. |
llm | string; one of "not_used" | yes | |
disclaimer | string | yes |
Pay and connect
Available through: x402 (USDC on Base), MCP, RapidAPI, Apify.
Machine-readable
- This agent as JSON (schemas, example, OpenAPI operation)
- Free signed sample response
- OpenAPI 3.1 · Catalog · Index of every agent