Washington Contractor Directory & Leads Scraper (L&I) avatar

Washington Contractor Directory & Leads Scraper (L&I)

Pricing

$0.002 / contractor records (typical mid-sized county)

Go to Apify Store
Washington Contractor Directory & Leads Scraper (L&I)

Washington Contractor Directory & Leads Scraper (L&I)

Browse all Washington State L&I contractor registrations filtered by county — business name, license type, status, contact info, and principal — from the official open-data registry.

Pricing

$0.002 / contractor records (typical mid-sized county)

Rating

0.0

(0)

Developer

ByteMe

ByteMe

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Pain points

  • Finding all licensed contractors in a specific Washington county requires manual browsing — the L&I portal offers single-lookup search, not bulk county exports.
  • Building a contractor prospect list for King, Pierce, or Spokane County means stitching together hundreds of individual lookups.
  • No structured county-level export exists in the public portal — the raw open-data is flat, with no county field.

What we solve

  • Pull every WA L&I contractor registration in bulk and filter to any county in one run.
  • Derives the county for each contractor client-side from their ZIP code using a static WA ZIP→county mapping.
  • Returns structured records — business name, license number, type, status, address, phone, and principal — ready for CRM import or lead scoring.

Summary

Extract the full Washington State L&I contractor registry — all 160,000+ registrations — filtered to any county, in a single structured dataset. The official Socrata open-data API has no county field; this actor derives county from each contractor's ZIP code and lets you slice by King, Pierce, Spokane, or any of Washington's 39 counties. Every record includes business name, license number and type, active/expired status, full address, phone, and primary principal. No CAPTCHA, no proxy, no browser — pay per record returned.

Who it's for

  • GCs and specialty subs building a county-level competitor map or vendor network
  • Sales reps targeting licensed WA contractors in a territory with a new tool, material, or service
  • Insurance and bonding agents prospecting for contractor accounts by county
  • Market researchers studying WA construction market density by region
  • Staffing firms recruiting tradespeople and project managers from active-license rosters

How to use

Set the input, run the actor, and collect results from the run's dataset (export to JSON/CSV/Excel, or pull via the Apify API). Example input:

{
"county": "King",
"statusFilter": "ACTIVE",
"maxResults": 500
}

See Inputs below for every available field.

What you get

One row per record:

FieldDescription
countyWA county derived from the contractor's ZIP code (null for out-of-state addresses or unrecognised ZIPs)
business_nameLicensed business name
license_numberL&I contractor registration number
license_typeLicense type description (e.g. CONSTRUCTION CONTRACTOR, ELECTRICAL CONTRACTOR)
statusLicense status (e.g. ACTIVE, EXPIRED, SUSPENDED)
addressBusiness street address line 1
address2Business street address line 2 (when present)
cityBusiness city
state_codeBusiness state (often WA; some licensees are based out of state)
zip_codeBusiness ZIP code
phoneBusiness phone number (when published)
license_effective_dateDate the license became effective
license_expiration_dateLicense expiration date
business_typeLegal entity type (e.g. Limited Liability Company, Corporation, Sole Proprietor)
specialtyPrimary specialty code description (e.g. GENERAL, ELECTRICAL, PLUMBING)
specialty_2Secondary specialty code description (when present)
ubiWA Unified Business Identifier
primary_principalPrimary principal / owner name
source_urlLink to the official L&I open-data dataset

Sample:

{
"county": "King",
"business_name": "SEATTLE ROOFING LLC",
"license_number": "SEATTRL123AA",
"license_type": "CONSTRUCTION CONTRACTOR",
"status": "ACTIVE",
"address": "1234 Pike St",
"address2": null,
"city": "SEATTLE",
"state_code": "WA",
"zip_code": "98101",
"phone": "2065551234",
"license_effective_date": "2020-01-15T00:00:00.000",
"license_expiration_date": "2026-01-15T00:00:00.000",
"business_type": "Limited Liability Company",
"specialty": "GENERAL",
"specialty_2": null,
"ubi": "601234567",
"primary_principal": "SMITH, JOHN A.",
"source_url": "https://data.wa.gov/Business/Washington-Contractors/m8qx-ubtq"
}

Inputs

FieldRequiredTypeDefaultDescription
countynostringReturn only contractors in this WA county (e.g. 'King', 'Pierce', 'Spokane'). Leave blank to return all counties. Case-insensitive.
statusFilternostring"ACTIVE"Filter by license status. Use 'ACTIVE' (default) for current licenses only, or 'ALL' to include expired and suspended records.
maxResultsnointegerCap on the number of records to return. Leave blank (or 0) for no cap.

Pricing (Pay Per Event)

You pay per result (dataset-item) — no charge for empty runs. Example: 5000 contractor records (typical mid-sized county) at $0.002/result$10.00.

Illustrative — the final per-result price is set at publish time. Apify platform usage (compute) is billed separately per your plan.

Use cases

  • Territory lead generation — pull every active GC or specialty sub in King County for a sales outreach campaign.
  • Competitive landscape mapping — see which license types (electrical, plumbing, HVAC) are densest in a target county.
  • Insurance prospecting — build a list of active contractors in Pierce or Snohomish County for renewal outreach.
  • Market sizing — count active registrations per county to prioritise which WA markets to enter first.
  • Vendor onboarding — verify and enrich a supplier list by matching against the full L&I registry for a specific county.

Why this actor

  • The only structured county-level WA contractor directory — the raw open-data has no county field; this actor derives it from ZIP codes.
  • Covers all 160,000+ L&I registrations; filter to any of Washington's 39 counties in a single run.
  • Official L&I open-data source — authoritative, not a third-party copy.
  • No CAPTCHA, no proxy, no browser — lowest possible cost per record.
  • Status filter built in — run active-only (default) or include expired/suspended for a full historical roster.

Limitations & updates

County assignment depends on a static ZIP→county mapping covering Washington's major ZIP codes. Out-of-state contractors and a small fraction of less common WA ZIP codes will have county=null. The data reflects the L&I open-data snapshot (refreshed on business days), not real-time registry state. Bond, workers-comp, and insurance details are published in separate L&I datasets and are not joined here. Full-dataset runs (no county filter) may take several minutes to complete the ~160+ API pages.

FAQ

Where does the data come from?

The official Washington State Department of Labor & Industries (L&I) contractor-registration open-data dataset, published on data.wa.gov (Socrata). Public, authoritative, refreshed on business days.

How does the county filter work?

The L&I dataset has no county field. This actor derives county from each contractor's ZIP code using a static WA ZIP→county mapping covering all 39 counties. Contractors with out-of-state or unrecognised ZIP codes will have county=null and won't match a county filter.

How many records does a typical county run return?

It varies by county size. King County alone has tens of thousands of active registrations; rural counties may have a few hundred. Run without a county filter to get the full dataset (~160,000 rows).

Can I get all counties at once?

Yes — leave the county field blank. The actor pulls the full registry and returns all records (or up to your maxResults cap).

What does statusFilter do?

Set to 'ACTIVE' (default) to return only currently licensed contractors. Set to 'ALL' to include expired, suspended, and re-licensed records for a full historical roster.

How am I charged?

Pay per record returned. No charge for runs that return zero records.

Is this personal data?

It's public professional-license data (business and registration records as L&I publishes them); no personal/PII enrichment is added.

How current is the data?

It reflects the L&I open-data registry, which the state refreshes on business days. Expect up to 1–2 business days of lag for recent changes.

Which actor to choose

Part of the WA contractor data suite — pick the one that fits your goal:

  • Washington Contractor License Lookup & Verify (L&I) — You have a specific license number or business/principal name and want to verify a single contractor's status, type, and expiration.
  • California Contractor Directory & Leads Scraper (CSLB) — You need the same county-level directory but for California contractors (CSLB).
  • Florida Contractor License Lookup & Verify (DBPR) — You're verifying a Florida contractor — type, status, expiration, county (DBPR).
  • Oregon Contractor License Lookup & Verify (CCB) — You're verifying an Oregon contractor — status, bond, insurance & RMI (CCB).