US Building Permits Scraper - Construction Leads, 13 Cities avatar

US Building Permits Scraper - Construction Leads, 13 Cities

Pricing

from $2.00 / 1,000 results

Go to Apify Store
US Building Permits Scraper - Construction Leads, 13 Cities

US Building Permits Scraper - Construction Leads, 13 Cities

Fresh building permits from official city open-data APIs: Chicago, NYC, LA, Austin, Seattle, SF, Philadelphia, Boston + more. Normalized permit type, status, address, valuation and contractor name. Construction leads, pay per result.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Michi Reinhoffer

Michi Reinhoffer

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Share

US Building Permits Scraper - Construction Leads from 13 Major Cities

Fresh building permits from official city open-data APIs. One clean schema, 13 cities, ready for lead generation. Get permit number, type, status, issue date, address, valuation, and contractor name where the city publishes it.

No proxies. No HTML scraping. Every source is a government JSON API.

Supported cities

CityContractor nameValuationSource
Chicago, ILYesYesdata.cityofchicago.org
New York, NY (DOB NOW)YesYesdata.cityofnewyork.us
Los Angeles, CANoYesdata.lacity.org
Austin, TXYesPartialdatahub.austintexas.gov
Seattle, WANoYesdata.seattle.gov
San Francisco, CANoYesdata.sfgov.org
Philadelphia, PAYesNophl.carto.com (L&I)
Boston, MAYes (applicant)Yesdata.boston.gov
New Orleans, LAYesYesdata.nola.gov
Cincinnati, OHYesYesdata.cincinnati-oh.gov
Baton Rouge, LAYesYesdata.brla.gov
Norfolk, VANoNodata.norfolk.gov
Montgomery County, MDNoYesdata.montgomerycountymd.gov

Honest coverage: if a city does not publish a field, the actor returns null for that field. No fabricated data, no enrichment.

Any other Socrata city works too. Paste the dataset resource URL (https://<portal>/resource/<id>.json) and the actor auto-maps the common permit fields. Ideal if your city runs on Socrata.

Why this actor

Built for construction lead generation. A newly issued permit means a funded project that is about to start. Filter by date, sort by valuation, contact the contractor while the job is still open.

  • Official sources only. Direct from city open-data portals (Socrata, Carto, CKAN). Stable, legal, and no proxy costs.
  • One schema across all cities. permitNumber, issuedDate, valuation, contractor mean the same thing everywhere. No per-city cleanup.
  • Honest field coverage. The table above shows exactly which cities publish contractor names and valuations. You know what you will get before you run.
  • Privacy safe by design. The actor never outputs homeowner or owner names, even when a city publishes them. You get the contractor and the project, not personal data on residents. Better for compliance and deliverability.
  • Quality guard built in. If a city changes its schema, the actor flags the issue and skips bad rows instead of filling your dataset with blanks.
  • Pay for what you get. You are charged only for permits actually delivered.

Use cases

  • Building material suppliers - Find new projects by ZIP code and reach buyers for lumber, roofing, HVAC, and fixtures this month.
  • Contractor and subcontractor sales - Solar, HVAC, plumbing, and electrical teams prospecting the GCs who just pulled permits.
  • Market research and PropTech - Track construction volume, valuation trends, and permit velocity by city and neighborhood.
  • Real estate investors - Monitor renovation and development activity block by block.

Pricing

$2 per 1,000 permits ($0.002 per permit, charged via apify-default-dataset-item).

You pay only for permits returned. No setup fee, no charge for empty runs.

Input

{
"cities": ["chicago", "austin", "philadelphia", "baton-rouge"],
"issuedAfter": "2026-06-01",
"maxPermitsPerCity": 500
}
  • cities - Required. City names (chicago, nyc, la, sf, philly, boston, etc.), portal URLs, or raw Socrata resource URLs. Case insensitive.
  • issuedAfter - Optional. YYYY-MM-DD. Only permits issued on or after this date. For fresh leads, use the last 7 to 30 days.
  • maxPermitsPerCity - Optional. Maximum permits per city, newest first. Default 500.

Output

One dataset item per permit. Export as JSON, CSV, or Excel from the dataset tab, or pull via the Apify API into your CRM.

{
"city": "Chicago, IL",
"permitNumber": "B200476664",
"permitType": "PERMIT - EXPRESS PERMIT PROGRAM",
"status": "ACTIVE",
"issuedDate": "2026-07-10T00:00:00.000",
"address": "9764 S LOOMIS ST",
"description": "INSTALL SOLAR PANELS ON ROOF OF ACCESSORY BUILDING",
"valuation": 5130,
"contractor": "SUNRUN INSTALLATION SERVICES",
"latitude": 41.716239,
"longitude": -87.657705,
"url": null,
"source": "chicago"
}

Fields:

FieldDescription
cityNormalized city label, e.g. Chicago, IL
permitNumberCity permit or filing number
permitTypePermit or work type
statusCurrent permit status
issuedDateIssue date (ISO). For Norfolk, application_date is used as no issue date is published
addressStreet address
descriptionWork description
valuationProject valuation in USD, or null if not published
contractorContractor or applicant business name, or null if not published
latitude / longitudeCoordinates where published
urlPermit detail link where published
sourceInternal registry key for the city

FAQ

Is this legal?

Yes. All data comes from official government open-data portals that cities publish for public use, accessed through their documented APIs (Socrata, Carto, CKAN). No scraping of protected or private systems.

Do you include homeowner or owner names?

No. This actor deliberately excludes owner and homeowner name fields even where a city publishes them. Lead buyers need the contractor and the project, not resident personal data. Contractor and business names are included because they are commercial records.

Why is my city not listed?

Many cities run permits on ArcGIS Hub or Accela, which require per-city integration. Miami, Denver, DC, and Phoenix are examples. If your city has a Socrata portal, try pasting the dataset resource URL directly, it will often work today. Unsupported cities are logged in the run, never silently dropped.

How fresh is the data?

Data is refreshed by each city, typically daily. The actor always returns the newest permits first.

Why did I get fewer permits than my cap?

Either the issuedAfter window contained fewer permits, or the city published fewer records in total. The run log shows per-city counts.

Can I use this for any Socrata dataset?

Yes. Paste any https://<domain>/resource/<id>.json URL into cities. The actor samples the schema and maps the common permit fields automatically.