US Building Permits Monitor: Daily Construction Leads by Trade
Pricing
from $1.20 / 1,000 building permit returneds
US Building Permits Monitor: Daily Construction Leads by Trade
New building permits as roofing, solar, HVAC and construction leads from NYC, LA, SF, Seattle, Austin and 4 more official city and county portals. Filter by trade, value, ZIP. New-only monitor mode. $1.50/1k. Not affiliated with or endorsed by any government agency.
Pricing
from $1.20 / 1,000 building permit returneds
Rating
0.0
(0)
Developer
Derek VanLaningham
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
New US building permits every day, from 9 official city and county open-data portals, filtered by trade, value and ZIP. Monitor mode, no API key, no contact scraping, $1.50 per 1,000.
Not affiliated with or endorsed by any government agency.
This Actor is a building permits scraper / construction leads API built on official open data (not city website HTML scraping). Trade tags are approximate keyword heuristics — always verify against permitType, workClass and description.
What you get
One normalized row per permit:
| Field | Notes |
|---|---|
permitKey | {source}:{permitNumber} |
jurisdiction | e.g. New York City, NY |
permitType / workClass / status | As published |
tradeTags | Approximate: solar, roofing, hvac, electrical, plumbing, ev-charger, pool, demolition, new-construction, adu, addition-alteration, signage, windows-doors |
isNewConstruction | true when new-construction ∈ tradeTags |
description | Phones/emails scrubbed; max 2,000 chars |
valuationUsd | Declared/estimated value (null if missing; Austin has none) |
issuedDate / appliedDate | YYYY-MM-DD |
address | Site address of the permitted work (property, not a person) |
contractors | Business names only (legal suffix / trade-word filter) |
ownerBusiness | Owner only if a business (never a person name) |
sourceUrl + licence | Citation |
changeType | new / updated in monitor mode |
Why this Actor
- Official open-data APIs only (Socrata SODA 2.1) — no logins, CAPTCHAs or HTML scraping
- One schema across 9 areas
- Trade tags for roofing, solar, HVAC, pool and more (approximate)
- Valuation and ZIP filters
- Monitor mode (new + changed only)
- Per-source freshness in
RUN_SUMMARY - Privacy-safe (no owner names or phones — competitors sell contacts; we do not)
- MCP-ready
Coverage
| Source | Dataset | Typical weekly volume | Valuation | Contractors | Lag |
|---|---|---|---|---|---|
| NYC | rbx6-tga4 | ~3,700 | yes | business applicant | ~3 days |
| Los Angeles | pi9x-tg5x | ~1,400 | yes | — | ~1–2 days |
| San Francisco | i98e-djp9 | ~250 | yes | — | ~1–2 days |
| Seattle | 76t5-zqzr | ~125 | yes | — | low |
| Austin | 3syk-w9eu | ~1,100 | none | company name | low |
| Cincinnati | uhjb-xac9 | ~230 | yes | company | low |
| Baton Rouge | 7fq7-8j7r | ~160 | yes | company | low |
| New Orleans | rcm3-fn58 | ~320 | yes | list | low |
| Montgomery County MD | commercial + residential | ~180 | yes | — | low |
Chicago is not included in v1 (portal terms: indemnity, mandatory disclaimer, stop-right).
Known limits: trade tags are approximate; LA solar flags are sparse; Cincinnati descriptions are coarse; NYC Mechanical Systems filings often tag as addition-alteration rather than hvac.
How to use
Daily roofing / solar / HVAC leads (monitor + schedule)
- Set
tradeTags(e.g.["roofing"]),monitorMode: true, pick amonitorId. - Schedule daily. Webhook the dataset to Slack, email, Make, n8n or Zapier.
- Only new (and optionally updated) permits are returned and charged.
{ "tradeTags": ["roofing"], "monitorMode": true, "monitorId": "roofing-daily", "firstRunLookbackDays": 3, "maxItems": 200 }
- First run: loads the last
firstRunLookbackDaysdays (default 3), not a big backlog. Set it higher (up to 30) if you want more history on day one. - Later runs: only permits that are new since the previous run.
lookbackDays(default 14) re-checks recent days for late-published permits, but never reaches back before your first run. - Capped runs mix cities: when
maxItemscuts a run short, rows are taken round-robin across cities (newest first within each city), so a 50-row all-city run returns a mix instead of only the city with the latest dates. Uncapped runs stay newest-first. - Capped runs resume: if a run stops at
maxItemsor your spend limit, the status says "Returned X of Y+ new permits. Raise maxItems or your spend limit." The next run continues with the next permit not yet returned, so nothing is skipped and nothing you already received is charged again. Y is a lower bound when it ends in "+". - Approximate cost: all 9 cities, no filters, is a few hundred permits per weekday; a trade filter like roofing is typically tens per day. At $0.0015 per permit, 100 permits ≈ $0.15 plus the $0.002 start fee.
Large projects over $1M
{ "minValuationUsd": 1000000, "issuedWithinDays": 7, "maxItems": 500 }
Austin is skipped with a warning (no valuation column).
New construction in your ZIPs
{ "newConstructionOnly": true, "zipCodes": ["78702", "78757"], "issuedWithinDays": 30 }
Input highlights
| Input | Default | Notes |
|---|---|---|
sources | all 9 | NYC, LA, SF, Seattle, Austin, Cincinnati, Baton Rouge, New Orleans, Montgomery MD |
issuedWithinDays | 7 | 1–90 |
tradeTags | — | Approximate keyword tags |
minValuationUsd | — | Excludes null valuations; skips Austin |
zipCodes | — | 5-digit |
monitorMode | false | New (+ updates) only |
lookbackDays | 14 | Covers NYC lag (never before the monitor's first run) |
firstRunLookbackDays | 3 | Days loaded on a monitor's first run |
maxItems | 50 | 0 = no limit |
timeBudgetSeconds | 120 | Partial results with truncated=true |
socrataAppToken | — | Optional secret; raises Socrata rate limits for very large jobs |
Pricing
| Event | FREE | BRONZE | SILVER+ |
|---|---|---|---|
permit (primary) | $0.0015 | $0.0014 | $0.0012 |
| Actor start | $0.002 | $0.002 | $0.002 |
Minimum max total charge per run: $0.02. Platform memory start fee: at the 512 MB default you pay one start event ($0.002). Raising memory above 1 GB charges $0.002 per GB.
Examples (FREE): default 50 rows ≈ $0.077; weekly solar (~213) ≈ $0.32; weekly ≥$1M (~303) ≈ $0.46.
Use as an MCP tool
Endpoint: https://mcp.apify.com/?tools=optimistprime/us-building-permits-monitor
Example agent call:
{ "sources": ["austin"], "tradeTags": ["pool"], "issuedWithinDays": 7, "maxItems": 10 }
Prompts:
- "Find new roofing permits issued in Los Angeles this week with a declared value over $20,000."
- "Which contractors pulled permits for projects over $1M in NYC in the last 7 days?"
- "List new pool permits in Austin ZIP 78757 this month."
Privacy
We never fetch or output owner, applicant or contractor person names, phones, licence numbers, emails or contractor home addresses. Business names are kept only when they pass a business-marker filter (LLC, Inc, Construction, Roofing, Electric, …). Site addresses are kept — they identify the property being permitted.
Data sources & licences
Official city/county open-data portals (public domain, PDDL, CC0 or NYC Open Data Law). Attribution is carried on every row in licence.
If you are a data owner and want a dataset removed, open an issue.
FAQ
Why no homeowner names or phone numbers? Privacy. You get the site address and contractor company (when published and business-marked). We do not sell contact data.
Why is Austin missing valuation? The Issued Construction Permits dataset has no valuation column.
How fresh is NYC? Typically ~3 days behind the calendar date.
Can you add my city? Candidates for v1.1 include Chicago (if terms allow), Marin, Cambridge, Norfolk, Calgary, Edmonton and NJ open-data portals.
Is this a scraper? It reads official open-data APIs (SODA). No city website HTML scraping, no CAPTCHA bypass. Store search may still call it a building permit scraper / construction leads tool.
Ready-to-run examples
Each example is a published task: open its page and click Try, or paste the JSON into Input.
| Example | Task | Sample run | Rows |
|---|---|---|---|
| New solar permits (weekly) | new-solar-permits-weekly | 2k47b8ERNNIwAodCu | 175 |
| New roofing permits (weekly) | new-roofing-permits-weekly | gBPdmVCp8U2VzvJzt | 883 |
| Construction permits over $1M (weekly) | construction-permits-over-1m-weekly | dBqlIFEfbASnueDXK | 199 |
Times and row counts from real runs on Oct 5, 2026 (FREE-tier prices); results change as city portals update.
Changelog
See CHANGELOG.md.