Gov Permit Scraper — Public Records to Sales Pipeline
Turn government permit databases into enriched B2B lead lists with automated outreach.
Pipeline Overview
- Scrape — Pull new permits from state/county databases
- Filter — Remove irrelevant permits (distributors, manufacturers, renewals)
- Enrich — Find business emails via Brave Search + contact page scraping
- Store — Append to Google Sheets or CSV with deduplication
- Email — Send personalized outreach via Resend/SMTP
- Drip — Follow up at day 3 and day 7
Supported Data Sources
Texas (TABC — Liquor Licenses)
- Source:
https://www.tabc.texas.gov/public-information/new-permits-issued/ - Data: Business name, permit type, address, county, issue date
- Best for: Insurance agents, POS vendors, food service suppliers
Adaptable to Any State
The scraper pattern works for any government permit database:
- Contractor licenses
- Restaurant health permits
- Real estate licenses
- Professional licenses (medical, legal, etc.)
- Business registrations (Secretary of State)
Requirements
- Brave Search API key — for email enrichment
- Resend API key (or SMTP) — for outreach emails
- Google Sheets OAuth (optional) — for lead tracking
Quick Start
# Set environment variables
export BRAVE_API_KEY=your_key
export RESEND_API_KEY=your_key
# Run the TABC pipeline
node scripts/permit-pipeline.js --source tabc --since 2026-03-01
# Dry run (no emails sent)
node scripts/permit-pipeline.js --source tabc --since 2026-03-01 --dry-run
Configuration
Edit scripts/config.json:
source: Which permit database to scrapefilterKeywords: Permit types to excludeenrichmentMethod: brave | deepcrawl | directemailTemplate: Customizable pitch templatesheetId: Google Sheets ID for lead trackingfromEmail: Sender email address
Scripts
scripts/permit-pipeline.js— Main scrape → enrich → email pipelinescripts/config.json— Pipeline configuration
Email Strategy
Initial Outreach (Day 0)
Congratulate on new license, offer relevant service. Keep under 100 words.
Follow-up (Day 3)
Quick bump with one additional value point.
Break-up (Day 7)
Last touch, include social proof or case study link.
References
- See
references/data-sources.mdfor government database URLs by state - See
references/compliance.mdfor CAN-SPAM and cold email legal guidelines