Package Information
Available Nodes
Documentation generating…
Documentation
n8n-nodes-site-due-diligence-bundle
An n8n community node for the Apify actor Site Due-Diligence Bundle -- a 20-layer property fatal-flaw screen. One call per coordinate returns a verdict (proceed / caution / no-go / incomplete-screen / not-screened) and a 0-100 composite site score across EPA contamination, FEMA flood, NWI wetlands, ESA critical habitat, NAAQS air nonattainment, NRHP historic districts, seismic design category, karst/sinkhole risk, USACE levees, NID dams, tank/spill registries, gas pipelines, transmission-grid proximity, wildfire exposure, and more -- built from keyless US federal and state open-data APIs.
Keywords: property due diligence, phase 1 esa, environmental screening, real estate due diligence, land use screening, site score.
Why use this node
Real estate underwriting, CRE acquisition, and environmental-consulting workflows in n8n can now call a single node instead of stitching together a dozen federal GIS endpoints. Feed it a list of coordinates from a spreadsheet, CRM, or webhook, and get back a structured verdict per site plus per-layer status columns you can route on (e.g. auto-flag no-go sites to Slack, auto-approve proceed sites into a pipeline).
Installation
Option A -- n8n GUI (self-hosted or Cloud with community nodes enabled)
- Go to Settings > Community Nodes.
- Select Install.
- Enter
n8n-nodes-site-due-diligence-bundle. - Agree to the risk notice and select Install.
Option B -- npm (self-hosted, manual)
cd ~/.n8n/nodes # or your n8n custom-nodes directory
npm install n8n-nodes-site-due-diligence-bundle
Restart n8n after installing.
Credentials
This node calls the Apify API and needs an Apify account. In n8n, create a new Apify API credential (or Apify OAuth2) with your Apify API token. No Apify credential is needed to run the underlying actor's own data sources -- they are all keyless US government APIs; the Apify credential is only what authorizes the actor run itself.
Node parameters
| Field | Type | Description |
|---|---|---|
| Sites to screen (coordinates) | JSON | Array of { "lat": <number>, "lon": <number>, "label": "<optional>" }. One billable scorecard row is returned per successfully screened asset. |
| Proximity radius (miles) | Number (0.25-25) | Search radius for the proximity layers (EPA contamination, ESA habitat, transmission grid, wildfire, landslide, 303(d) impaired waters, tank/spill registries, gas pipelines, NWI wetlands, NRHP historic, NID dams). Point-in-polygon-only layers (protected lands, flood/NRI county, seismic, IRA energy community, karst, levee, CalFire FHSZ, NAAQS, CBRS) ignore this. |
| Max assets | Number (1-1000) | Safety cap on the number of assets screened from the list. |
Example workflow
Manual Trigger -> Apify Site Due-Diligence Bundle -> IF (verdict == "no-go") -> Slack
(Verdict values: proceed, caution, no-go, incomplete-screen, not-screened.)
- A Manual Trigger (or Webhook) node feeds in one or more sites.
- The Apify Site Due-Diligence Bundle node runs with:
{
"assets": [
{ "lat": 29.7355, "lon": -95.2601, "label": "Houston Ship Channel parcel" },
{ "lat": 44.29, "lon": -105.5, "label": "Gillette, WY greenfield" }
],
"radiusMiles": 1,
"maxAssets": 250
}
- Each output item is one scorecard row with fields including
verdict,site_score(0-100,100 - 35*TierA - 18*TierB - 6*TierC, floored at 0),fatal_flaw_count,coverage_pct, and one<layer>_statuscolumn per data layer (e.g.epa_contamination_status,fema_flood_status,nwi_wetlands_status). - An IF node branches on
{{$json.verdict}} === "no-go"to notify a Slack channel, and routesproceedsites into a downstream CRM update.
Links
- Actor page & full field reference: https://apify.com/malonestar/site-due-diligence-bundle
- Call this actor directly as an MCP tool:
https://mcp.apify.com?tools=malonestar/site-due-diligence-bundle - Report an issue with this node: https://github.com/malonestar/n8n-nodes-site-due-diligence-bundle/issues
- n8n community nodes docs: https://docs.n8n.io/integrations/community-nodes/