NYC Construction Permit & Contractor Leads
Pricing
$4.50 / 1,000 unique contractor leads
NYC Construction Permit & Contractor Leads
Find recent NYC construction permit signals and business contact details matched to active city contractor licenses. Official NYC Open Data; JSON and CSV exports.
Pricing
$4.50 / 1,000 unique contractor leads
Rating
0.0
(0)
Developer
AFK Digital
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
13 hours ago
Last modified
Categories
Share
NYC Construction Permit & Licensed Contractor Leads (NEWAPI03)
Find recently issued NYC construction permits and connect an applicant to contact information only when an active DOB license record matches its license number and mapped license type. Designed for construction suppliers, software vendors, insurers, and B2B research teams.
Sources and scope
- Official NYC DOB NOW approved permits: https://data.cityofnewyork.us/Housing-Development/DOB-NOW-Build-Approved-Permits/rbx6-tga4
- Official NYC DOB active licenses: https://data.cityofnewyork.us/Housing-Development/DOB-Licenses-Filtered-for-Active/9hiw-49pz
- NYC Open Data policy: https://www.nyc.gov/opendata/get-started/user-guides/open-data-apis and NYC Admin. Code §23-502(d).
- No Houzz access, reviews, ratings, revenue estimation, personal owner contact enrichment, or automated outreach. No affiliation or endorsement by NYC.
- License information is a snapshot, not a guarantee of current validity. Check with the issuing authority. Estimated job cost is a filing estimate, not contractor revenue or a confirmed contract value.
Input
borough (NYC borough or All), exact workType, zipCode, keyword, issuedSince (YYYY-MM-DD), minEstimatedCost, maxEstimatedCost, maxResults (1–1000), and maxPermitRows (50–5000). Defaults: Manhattan, General Construction, previous 7 days, 25 unique contractor records, at most 500 permit rows. Filters with unavailable cost exclude rows with missing cost when a cost threshold is used.
Output
One JSON dataset item per distinct applicant license number (or normalized business name when missing). Fields: business_name, license_number, license_type, license_status, license_match_status, business_phone, business_email, business_address, borough, zip_code, work_type, job_description, estimated_job_cost_usd, issued_date, work_permit, source_url, license_source_url, observed_at. Empty fields remain null. Dataset exports JSON and CSV in Apify; flat rows work in Clay and n8n. A permit source URL and observation timestamp accompany each item.
A matched license is labeled number_and_type_active. Unmatched applicants retain the permit's public business data but no license-derived phone or email. We do not label any business “verified.” The API can have stale or missing information, and a permit indicates past issuance rather than an open bid.
Limits and operation
Uses official SODA API pagination in batches of 100; request timeout 15s, up to four attempts with backoff for transient errors, maximum 240 seconds, scan cap, max results, and in-run deduplication. An optional NYC_SOCRATA_APP_TOKEN environment variable can improve API reliability; it is never logged. Default needs no token. Runs against public NYC data and does not send messages.
Local: npm ci && npm test && npm start. Set APIFY_LOCAL_STORAGE_DIR and provide storage/key_value_stores/default/INPUT.json to run with custom input. Container: docker build -t newapi03 ..
Pricing
Pay-per-event result is charged once per emitted contractor record through Actor.pushData(row, 'result'). Live pay-per-event price: $0.0045 per distinct contractor result ($4.50 per 1,000). Apify charges this event once per emitted row. Platform usage, Apify commission, and any account-tier discounts affect the creator's net payout. A two-result paid test run measured $0.00017 in platform usage; large-run profitability has not been measured.