Building Permits Scraper — Contractor & Construction Leads
Pricing
from $5.00 / 1,000 permits
Building Permits Scraper — Contractor & Construction Leads
Multi-city building permits from city/county open-data APIs. cities[] + keyword. Contractor names, addresses, work type. Pairs with Skip Trace / UCC / Code Violations.
Pricing
from $5.00 / 1,000 permits
Rating
1.0
(1)
Developer
IntelScrape
Maintained by CommunityActor stats
4
Bookmarked
113
Total users
2
Monthly active users
0.47 hours
Issues response
8 days ago
Last modified
Categories
Share
Building Permit Scraper — Roofing, Solar & HVAC Leads

🇨🇳 中文简介 (Chinese — China & Singapore): 想第一时间拿到美国城市新发建筑许可做屋顶/太阳能/暖通拓客?本 Actor 直连市政开放数据(Socrata / Accela / Tyler / ArcGIS),支持
cities[]多城 +keyword(roof / solar / HVAC)过滤,返回许可类型、造价、地址以及门户公开的业主/承包商姓名。电话与邮箱为可选 enrichment(默认开启;仅成功命中时另计 +$0.05;不保证每条都有电话/邮箱。设 enrichContractors=false 可避免 enrichment 费用)。按交付许可计费,无需 API Key。现在运行,把 HOT 许可线索同步到表格或 AI 工作流。
🇸🇬 Ringkasan Melayu (Singapore): Mahukan permit bina baharu (atap, solar, HVAC) dari bandar AS? Actor ini tarik data terbuka bandar dengan
cities[]+ penapiskeyword. Jenis permit, nilai, alamat dan nama pemilik/kontraktor bila diterbitkan. Telefon/e-mel ialah enrichment pilihan (dinyalakan secara lalai; +$0.05 hanya bila berjaya; tidak dijamin. Set enrichContractors=false untuk elak kos enrichment). Bayar per permit — tiada API key. Ideal untuk kontraktor dan lead pembinaan. Cuba di Apify.
🤖 NEW: Connect This To Your AI! (MCP)
Want permit leads and owner-phone enrichment inside Claude, Cursor, or ChatGPT? Use the Skip Trace MCP Server — Model Context Protocol access to Building Permit Scraper + Skip Trace PRO in one AI workflow. Ask your agent to multi-city scan permits, filter by keyword, then skip-trace owner phones hands-free.
🏆 Featured Bots by IntelScrape
- Building Permit Scraper — Roofing, Solar & HVAC Leads
- Skip Trace PRO — Name, Address, Phone & Email People Lookup
- Code Violations Scraper — City Code Enforcement Leads
- TruePeopleSearch Scraper — Phone & Email Matches
- TikTok Scraper — Emails & Influencer Leads
- Google Maps No-Website Leads — Local Businesses Without a Website
- UCC Lien Scraper — Florida & New Jersey Filings
- Skip Trace MCP Server — Use Skip Trace inside Claude, Cursor, ChatGPT
⚡ Use this Actor in n8n — no code
- Add the official Apify node in n8n.
- Connect your Apify API token.
- Run Actor ID:
IntelScrape/building-permit-scraper.
Contractor / solar / roofing lead buyers: pull newly issued building permits from city/county open-data portals — not fragile homepage scrapers.
Filter with cities[] (multi-city pack) + keyword (roof, solar, HVAC, pool, …). Owner + contractor names when the portal publishes them. Phone & email via optional enrichment (ON by default, +$0.05 only on successful hits — phones/emails are not guaranteed). Set enrichContractors: false to avoid enrichment spend. HOT/WARM/COLD lead score, incremental mode, dedupe.
≈ $5 / 1,000 permits. No API key required.
Honest coverage & billing (read this): Sources are municipal open-data APIs (Socrata / Accela / Tyler / ArcGIS) where available — not every US city. You are billed $0.005 per delivered permit plus $0.05 actor start. Optional
contractor-enrichment(+$0.05) fires only when a phone/email/website is actually delivered (phones are opt-in, never guaranteed). Enrichment needs the owner backend token; if unavailable you still get public-record permit fields. UsedemoModefor a fictional sample.
🧭 Built for roofing contractors, solar installers, HVAC / remodel outreach, materials suppliers, lenders, and commercial construction sales.
⭐ Store rating is driven by daily power users. Please leave an honest review if this saves you time — we do not claim a fake 5.0★.
⚖️ Lawful business use only. Returns information already published on government open-data portals. You are liable for how you use it.
📌 Names, phones, and emails in this README are fictional examples for illustration.
🔗 Permit → Owner → Contact: a 3-step lead pipeline (for roofing, solar, HVAC & real-estate sales teams)
Three IntelScrape Actors chain into one workflow: find who just pulled a permit, then find a way to reach them. Each step is its own pay-per-event run, so you only pay for the steps you use.
| Step | Actor | What it gives you |
|---|---|---|
| Building Permit Scraper (you are here) | 1. New permits by city, trade and value: address, contractor, owner name where the city publishes it | |
| Skip Trace PRO | 2. Turn a name or address from step 1 into a person record (address history, relatives, phone/email where available) | |
| TruePeopleSearch Scraper | 3. Second-source phone/email check for the same person, so you can compare two sources before you call |
How to run it (no code):
- Run Building Permit Scraper with e.g.
{"city":"Austin","permitType":"Roofing","timePeriod":"Last 30 days","maxResults":25,"enrichContractors":false}and export the dataset. - Feed the owner names and addresses into Skip Trace PRO, one
First Last, City STquery per line. - Send any person who still has no phone or email to TruePeopleSearch Scraper.
- Keep the rows that two sources agree on; those are your call list.
Apify integrations (n8n, Make, Zapier, Google Sheets) can pass the dataset from one step to the next with no code. Results depend on what each public source returns for a given person; rows with no phone or email are not guaranteed.
🕵️♂️ Why Choose Us vs. "Cheaper" Competitors?
| Feature | Building Permit Scraper | Thin HTML scrapers |
|---|---|---|
| Sources | Civic open-data APIs | Brittle city homepages |
| Buyer filters | cities[] + keyword (roof/solar/HVAC) | One city dump |
| Billing | Pay per delivered permit | Pay for empty / junk rows |
| Contacts | Optional enrichment (ON by default; phones/emails not guaranteed) | Oversell “always phones” |
| Ops | Incremental + HOT/WARM/COLD | One-shot dumps |
Quick start (single city)
{"city": "Austin","state": "TX","permitType": "Roofing","minCost": 5000,"maxResults": 50,"timePeriod": "Last 30 days","enrichContractors": true}
Demo (fictional, no live scrape):
{ "demoMode": true }
Legacy aliases still accepted: targetLocation (“Austin, TX”), minProjectCost, max_results.
Multi-city pack + filters (cities[] + keyword + dates + zipCodes)
Scan several US cities in one run with optional free-text filtering — built for contractor / solar / roofing lead packs.
{"cities": ["Chicago", "Austin", "Miami"],"keyword": "solar","maxResults": 100,"timePeriod": "Last 30 days","enrichContractors": true}
| Input | What it does |
|---|---|
cities[] | List of US city names (e.g. ["Chicago","Austin"]). Each city is discovered separately. Caps via maxCities (default 25 for this list). Leave empty to use single city. |
keyword | Optional case-insensitive filter applied after scrape on description / permit type / contractor / address (roof, solar, HVAC, pool, …). |
dateFrom / dateTo | Optional YYYY-MM-DD bounds. When either is set, they override the Time period dropdown window. |
zipCodes[] | Optional post-scrape ZIP allow-list (normalized to 5-digit). Empty = no ZIP filter. |
Single-city mode still works with city + state as before.
Contractor rollup (new)
enableContractorRollup(default ON) — groups delivered permits by contractor (top 25) + onecontractor-rollup-summaryrow with Soft CTA → Skip Trace PRO / UCC Lien Scraper / Code Violations. Optionalcontractor-rollupPPE when the Store event is live (charged once per summary).
Enrichment honesty (read this)
- Live input schema:
enrichContractorsdefaults totrue(ON by default). - Phones / emails / websites are best-effort and not guaranteed on every permit row.
- You are billed +$0.05 (
contractor-enrichment) only on successful hits. - Set
enrichContractors: falseto scrape permits without enrichment spend.
Soft CTA — next steps after permits (SOFTCTA_LINKS_BUILDING_PERMIT_3_7_50)
Every permit row (and contractor rollup) includes a free softCta mesh — no extra PPE:
- Google Maps Email Extractor — nearby business emails
- Google Maps No-Website Leads — contractors/owners without sites
- Website Contact Scraper — emails/phones from contractor sites
- Code Violations — distress signals in the same markets
- UCC Lien Scraper — financing / secured-party intel
- Google Reviews Scraper — contractor / project reputation
- Yelp Reviews Scraper — local review intel
- TruePeopleSearch / Skip Trace PRO — people enrichment (links only)
What you get (per permit)
- Permit number, status, issue date, description
- Estimated project value (when published)
- Address / parcel fields when published
- Owner & contractor name when published
leadScore: HOT / WARM / COLDcontractor_phone/contractor_email/contractor_websiteonly if enrichment succeededisDemo+noticewhendemoModeis on
Pricing (PPE — unchanged)
| Event | Price | When it fires |
|---|---|---|
| Actor start | $0.05 | Once per run |
Permit (apify-default-dataset-item) | $0.005 | Each delivered permit |
| Contractor enrichment | $0.05 | Only when phone/email/website delivered |
Legal
Lawful B2B use of government open-data publications only. Not a consumer reporting agency.
Fresh leads & scoring
lastNDays/freshLeadsOnly/onlyNewResults- Numeric
leadScore0–100 +leadReasons[]+leadGrade filtersAppliedstamp + optionalsocrataAppToken- Soft CTA → Skip Trace PRO / Code Violations / UCC Lien
⭐ Store review
Got useful permits from a live city run? A short Store review helps other contractors find this Actor — thanks.