Jurisdictional Evidence Engine

Every property lives in a jurisdiction.
Every jurisdiction is evidence.

Permits, inspections, violations, certificates — the regulatory record for every property is already public. PIE extracts it from 60+ agencies, scores it with citations, and feeds it into CriticalAsset.

32
Jurisdictions seeded today
Hand-curated, FK-validated
12
US cities staged
NYC, DC, SD, Nashville live
6
Evidence categories per source
One integration, multiple lenses
<5min
Per-property backfill
Parallel dispatch across all matched sources
The Jurisdictions Layer

We seed every regulatory authority your portfolio touches.

Each jurisdiction is hand-verified before it ships: schema, identity keys, access pattern, disciplines covered. No silent fallbacks. No fabricated URLs.

🗽
18 sources
New York City
  • DOB Now Permits
  • DOB Violations
  • OATH Hearings
  • HPD Code Findings
  • Elevators
  • Boilers
  • Façade
Open Data + agentic deep-link extraction
🏛️
1 source
Washington, DC
  • DCRA Permits
  • CCBOE Inspections
  • DOEE Air Quality
CARTO SQL API + portal scraping
🌴
1 source
San Diego
  • Building Permits
  • Code Enforcement
  • Fire Inspections
OpenDSD direct ingestion
🎸
1 source
Nashville
  • Codes Permits
  • Property Maintenance
  • Right-of-Way
Hub.Nashville.gov agentic
🔔
2 sources
Philadelphia
  • L&I Permits (CARTO)
  • L&I Code Violations
CARTO SQL — bulk + verified-by-count
🌐
8 sources
Chicago, LA, SF, Boston…
  • Hand-curated catalogs ready
  • Plus 8 more cities staged
Promote on first use via recall test
How obligations get created

From a public dataset to a defensible obligation.

Five stages, fully automated. The same pipeline runs in under five minutes per property.

01
Jurisdiction
The authoritative source

A jurisdiction is the agency that issues, enforces, or records a regulatory obligation — NYC DOB, DC DCRA, SD Building & Safety. We seed each one with hand-verified discovery: where it publishes data, what shape it returns, what permit-system identifiers it requires.

jurisdictions.source_url · adapter_id · access_method · disciplines[]
02
Identity Match
Where does this property fit?

Every property carries identity keys (BBL/BIN in NYC, parcel_id in DC). The matcher resolves the property's state + city to the set of jurisdictions that govern it. NYC properties auto-resolve BIN from BBL via PLUTO if missing.

matchJurisdictions(property) → [jurisdiction_id, …]
03
Obligation
A duty appears on the asset

Each matched jurisdiction × category becomes an obligation row on the property. Annual fire-safety inspection. Quarterly elevator certificate. Five-year facade. The obligation knows its trigger date, its evidence requirements, and its source authority.

obligations.source_jurisdiction · trigger_rule · max_age_days
04
Evidence
Pull the proof

The runtime dispatches the matched jurisdictions through the same OSINT extraction engine, parallel by source. Permits, inspections, violations, complaints — every record returns with the source URL, confidence score, and citation proof.

osint_extractions.source_url · confidence · citation_proof
05
Compounding
One source, many answers

A single NYC DOB integration feeds Construction Permits, Operating Permits, Violations, Code Findings, Inspections, AND Compliance Obligations. Eighteen NYC sources × six categories = 108 simultaneously enriched evidence streams per Manhattan property.

1 jurisdiction → N categories → ∞ records
The Evidence That Lands

Six categories of proof, from one regulatory backbone.

Every record is sourced. Every URL deep-links to the authoritative dataset. Every confidence score is auditable.

📜
120K+
Permits

Construction, operating, after-hours, demolition. Every record carries dollar value, scope of work, contractor, status.

🔍
40K+
Inspections

Boiler, elevator, fire alarm, façade, HPD. Pass / fail, inspector, last-cycle date — surfaced before the next interval lapses.

⚠️
30K+
Violations

OATH hearings, ECB summons, DOB stop-work orders. With outstanding balance, hearing date, and resolution path.

📞
15K+
Complaints

311 service requests, code complaints, ECB-cited conditions. Surfaces operational issues before they escalate to violations.

📑
8K+
Certificates

Boiler, elevator, place of assembly, refuge area. Expiry-tracked; renewal obligations auto-created on the property timeline.

🏢
1M+
Identity & Tax

PLUTO building footprint, owner of record, tax class, year built, assessed value. The dossier under every other record.

The Compounding Effect

One source, many answers.

Look at New York. Nine sources, five evidence categories. Each cell below is a category we light up the moment a property's BBL/BIN is confirmed.

NYC SourcePermitsInspectionsViolationsComplaintsIdentity
DOB Now Build
DOB Now Safety
OATH ECB
HPD Code
BIS Elevators
BIS Boilers
Façade FISP
NYC PLUTO
311 Service
Compounding math: 9 NYC sources × 5 evidence categories = up to 45 distinct intelligence streams per Manhattan property — running in parallel, deep-linked, and auto-refreshed. Add a tenth source and every category gets richer.
What it unlocks

Built to survive a claim.

Underwriting Defensibility

When a broker asks "have you seen the OATH violations on this asset?" — you have, with the deep-link, the hearing date, and the disposition.

Renewal Leverage

Bring proof of ongoing inspection currency to renewal. Not "we maintain it" — the actual DOB Boiler certificate, dated and unexpired.

Operational Triage

Open violations with outstanding balance. Permits expiring in 30 days. Fire inspections past the renewal cycle. The portfolio dashboard, sorted by what bites.

Acquisition Diligence

Run a building through the engine in five minutes during DD. Permit history, façade compliance, ECB exposure, lien-attractive violations — fully sourced.

Claim Survival

When the carrier denies, the file already contains every authoritative record. Sourced, time-stamped, citation-proven. The discovery phase is preempted.

Continuous Audit

Every backfill is auditable. Every record carries the source URL it came from. Every confidence score above 0.7 auto-approves; below routes to the workbench.

How It Runs

Honest plumbing, surfaced in plain English.

Each tenant has its own jurisdiction catalog, seeded by a one-click admin workbench. Per-property backfill dispatches the matched jurisdictions in parallel, with a per-tenant advisory lock so concurrent runs serialize cleanly. Records persist into osint_extractions with both property_id and location_id set — so a tenant suite's evidence doesn't pollute its building's view, and the building's evidence doesn't drown a tenant's audit.

Tenant-scoped catalogs
No cross-tenant leakage
Idempotent migrations
Re-run anytime without harm
FK-validated seeds
No orphan adapters in prod
Constraint-name surfacing
Failures self-diagnose
Building × suite scoping
Granularity to the unit
Live coverage dashboard
Per-jurisdiction status, per-tenant

Your portfolio's regulatory shadow is already public.

We turn it into proof. Bring us your BBLs, parcels, addresses — we'll show you what the agencies say, before the renewal cycle begins.

Start a Pilot →See the 5 Reports