West Virginia Contractor License Lookup & Leads Scraper (WVCLB) avatar

West Virginia Contractor License Lookup & Leads Scraper (WVCLB)

Pricing

$0.004 / license record

Go to Apify Store
West Virginia Contractor License Lookup & Leads Scraper (WVCLB)

West Virginia Contractor License Lookup & Leads Scraper (WVCLB)

Look up any West Virginia contractor licence by number or name, or export every current WVCLB licence statewide (17,495 on 2026-10-12) with phone, mailing address, county, classifications and expiry.

Pricing

$0.004 / license record

Rating

0.0

(0)

Developer

ScrapeBench

ScrapeBench

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

4

Monthly active users

3 days ago

Last modified

Categories

Share

Pain points

  • The WVCLB search shows 20 contractors per page and has no export, so Kanawha County alone (802 licences on 2026-10-12) is 41 pages to copy by hand.
  • Its classification menu offers 17 classes, while the licences carry 63: roofing (1,224 licences), siding (897) and finished carpentry (797) are sub-classes of Specialty, which 17,377 of the 17,495 licences hold — so the form cannot list the roofers.
  • Out-of-state firms are mixed in with local ones: 7,967 of the 17,495 licences (45.5%) have a mailing address outside West Virginia.

What we solve

  • Export the whole state, or the slice you need, in one run: filter by county, any of the 63 classifications (by name or a word from it), city, or West Virginia mailing addresses only, each with a batch list.
  • Every row carries the board's phone, mailing street address, county, every classification on the licence and the expiry date — the fields the search shows, in a table you can sort and import.
  • Verify licences in bulk: a list of WV licence numbers, company names or DBA names returns each matching licence; names are searched in both the company and the DBA field.

Summary

West Virginia contractor licences from the WV Contractor Licensing Board (WVCLB), read live from the board's own public search. Export mode returns current licences statewide — 17,495 on 2026-10-12 — filtered by county, classification (roofing, HVAC, electrical, general building and 59 more), city or WV-only mailing addresses. Lookup mode takes licence numbers or company/DBA names. Every row has the company, DBA, phone, mailing address, county, classifications and expiry date. Pay per licence returned.

Who it's for

  • Sales teams selling materials, equipment, insurance or software to West Virginia contractors
  • Lead-generation agencies building trade-specific contractor lists by county or city
  • General contractors and suppliers sourcing licensed subcontractors near a job
  • Compliance, insurance and lending teams checking WV licence expiry dates in bulk

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": "Kanawha",
"classification": "roofing",
"maxResults": 500
}

See Inputs below for every available field.

What you get

One row per record:

FieldDescription
license_numberWVCLB licence number, e.g. WV038157
business_nameLicensed company (or sole proprietor)
dba_nameDoing-business-as name, when filed
phoneBusiness phone as the board lists it
addressMailing street address (can be a PO box)
cityMailing city
address_stateMailing state (out-of-state firms hold WV licences)
zip_codeMailing ZIP or ZIP+4
countyThe board's county: a WV county, OUT OF STATE or INTERNATIONAL
classificationEvery classification on the licence, '; '-separated
classificationsThe same classifications as a list
expiration_dateLicence expiry date (YYYY-MM-DD)
matched_bylicense_number, business_name or dba_name (lookup); export
source_urlThe WVCLB search page the row came from

Sample:

{
"license_number": "WV042229",
"business_name": "ACME VENTURES COMPANY LLC",
"dba_name": "ALMOST HEAVEN CUSTOM BUILDERS",
"phone": "(304) 539-8230",
"address": "PO BOX 217",
"city": "PEYTONA",
"address_state": "WV",
"zip_code": "25154-0217",
"county": "BOONE",
"classification": "GENERAL BUILDING; SPECIALTY; DEMOLITION; SEPTIC & SEWER SYSTEMS; RESIDENTIAL POOLS (ABOVE GROUND)",
"classifications": [
"GENERAL BUILDING",
"SPECIALTY",
"DEMOLITION",
"SEPTIC & SEWER SYSTEMS",
"RESIDENTIAL POOLS (ABOVE GROUND)"
],
"expiration_date": "2027-10-29",
"matched_by": "export",
"status": null,
"license_type": "Contractor License",
"state": "WV",
"source_url": "https://wvclboard.wv.gov/verify/"
}

Inputs

FieldRequiredTypeDefaultDescription
querynostring—A WVCLB licence number ('WV038157', or just '38157'), or part of a company or DBA name ('Almost Heaven'). Names match anywhere in the company name and in the DBA. Leave empty to run an export instead.
queriesnoarray[]Several lookups in ONE run, one per line. Combined with the field above if you fill both.
countynostring—A West Virginia county ('Kanawha', 'Berkeley County'), or 'Out of State' / 'International' for the board's non-WV licences. A value that is not one of these is dropped and logged.
countiesnoarray[]Several counties in ONE export.
classificationnostring—A WVCLB classification name or a word from one: 'roofing', 'hvac', 'electrical', 'general building', 'siding'. An exact name matches only itself ('electrical' does not also take SIGN INSTALLATION (NO ELECTRICAL)). A value that matches none of the board's 63 classifications is dropped and logged.
classificationsnoarray[]Several classifications in ONE export, e.g. roofing and siding.
citynostring—Mailing-address city, exact match ignoring case and punctuation, e.g. 'Charleston' (which does not include South Charleston).
citiesnoarray[]Several cities in ONE export.
westVirginiaAddressesOnlynobooleanfalseOut-of-state contractors hold WV licences: 7,967 of 17,495 (45.5%, 2026-10-12) have a mailing address outside West Virginia. Tick to drop them.
maxResultsnointeger500EXPORT: cap on licences for the WHOLE run — your spend control (17,495 licences statewide on 2026-10-12; set 100000 to take everything that matches). LOOKUP: cap per name or number (default 50).
proxyConfigurationnoobject{"useApifyProxy": false}Not needed: the board's search answers Apify's own IPs (measured 2026-10-12). Leave it off unless a run reports that the board refused it.

Pricing (Pay Per Event)

You pay per result (dataset-item) — no charge for empty runs. Example: 64 Kanawha County roofing contractors at $0.004/result ≈ $0.26.

The default export (500 licences) costs $2.00; the whole state (17,495 licences on 2026-10-12) costs $69.98 at maxResults 100000. Apify platform usage is billed separately.

Use cases

  • Territory prospecting: export every roofing and siding contractor in Kanawha, Putnam and Cabell counties with phone and mailing address for a CRM.
  • Statewide list build: take all current licences once, then re-run monthly and compare licence numbers to catch new licensees.
  • Subcontractor sourcing: list HVAC or plumbing contractors with a West Virginia mailing address in Berkeley County before sending bid invitations.
  • Vendor compliance: run your vendors' WV licence numbers as a lookup batch and flag any that are missing or close to expiry.

Why this actor

  • Phone on 17,480 of the 17,495 licences (99.9%), and mailing street address, county and expiry on all 17,495 (measured 2026-10-12).
  • Straight from the board's own public search, read live on every run — the board states the site is updated in real time with its licensure database.
  • Filter by any of the 63 classifications on the licences, not just the 17 in the board's menu; a county or classification it does not recognise is dropped and logged, never silently widened to the whole state.
  • Pay per licence returned; outage and bad-input notices are free.

Limitations & updates

Current licences only: the board's search does not list expired, revoked or lapsed licences, and publishes no status, issue date, owner or qualifier name. No email: the board publishes none. Addresses are mailing addresses (3,136 of 17,495 are PO boxes), so a city filter finds where the contractor's mail goes, not where they work. 15 of the 17,495 licences have no phone on file. The board's search returns at most 1,000 rows per request, so the whole state takes about 4 minutes (17,495 licences fetched in 216 s on Apify, 2026-10-12).

FAQ

Where does the data come from?

From the West Virginia Contractor Licensing Board's public contractor search (wvclboard.wv.gov/verify/), queried live on every run. Nothing is cached: each row is what the board's search returned at run time.

How many licences are there?

17,495 on 2026-10-12. Largest counties: Kanawha 802, Berkeley 654, Monongalia 648, Harrison 446, Raleigh 445, Cabell 442. 7,832 carry the board's OUT OF STATE county. Most common classifications after Specialty: General Building 5,388, Residential 2,876, Electrical 2,283, HVAC 1,634, Plumbing 1,431, Roofing 1,224.

Lookup or export — which do I use?

Lookup when you have licence numbers or names: fill 'License number or name' (or the batch list). Names match anywhere in the company name and in the DBA, and both are searched. Export when you want a list: leave that field empty and set filters.

Does it include expired or revoked licences?

No. The board's search lists current licences only (17,494 of the 17,495 on 2026-10-12 expired later than that day), and it publishes no status field, so the status column is always empty. A licence that is not in the search returns no row.

How do I name a classification?

By its name or a word from it: 'roofing', 'hvac', 'electrical', 'general building', 'finished carpentry'. An exact name matches only itself, so 'electrical' does not also return Sign Installation (No Electrical); a word like 'sign' matches every class containing it. A value that matches none of the 63 classes is dropped and logged.

Does it include out-of-state contractors?

Yes: 7,967 of the 17,495 licences (45.5%) have a mailing address outside West Virginia, most often Ohio (1,638), Pennsylvania (1,549), Virginia (993) and Maryland (880). Tick 'West Virginia mailing addresses only' to drop them, or use the county 'Out of State' to get only them.

How am I charged?

$0.004 per licence returned. The default export returns 500 licences ($2.00); Kanawha County roofing contractors were 64 ($0.26) on 2026-10-12. Rows explaining an outage or an unrecognised filter are free.

Which actor to choose

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

  • Ohio Contractor License Lookup & Leads Scraper (OCILB) — You need Ohio's electrical, HVAC, plumbing, hydronics and refrigeration contractors — the active OCILB roster with phone.
  • DC Contractor License Lookup & List Scraper (DLCP) — You need contractors licensed in Washington, DC — every active DLCP general contractor and home improvement licence.
  • Delaware Contractor License Lookup & List Scraper (DOR + DPR) — You need Delaware contractors — DOR business licences plus DPR electrical, plumbing and HVACR licences, by city or ZIP.
  • Mississippi Contractor License Lookup & Leads Scraper (MSBOC) — You need Mississippi contractors — the active MSBOC roster with phone, street address and classifications, by county or class.
  • Arizona Contractor License Lookup & Leads Scraper (ROC) — You need Arizona contractors — every active ROC licence with phone, address, class and qualifying party.
  • Iowa Contractor Registration Lookup & Leads Scraper (DIAL) — You need Iowa contractors — every active DIAL registration statewide, with phone and email, filtered by trade, county, city or ZIP.
  • Nebraska Contractor Registration Lookup & Leads Scraper (NDOL) — You need Nebraska contractors — every current NDOL registration, by service and county, with phone on request.
  • Colorado Electrical & Plumbing License Lookup & List Scraper — You need Colorado electrical or plumbing licences — contractors, masters and journeymen statewide, with status and public disciplinary actions.
  • Maryland Contractor License Lookup & List Scraper (MHIC) — You need Maryland home improvement contractors — every active MHIC licence with street address and expiry, by city or ZIP.
  • New Jersey Contractor License Lookup & Export (DCA) — You need New Jersey contractors — active DCA home improvement, electrical, master plumber and HVACR licences statewide or by city, with street address and owner for home improvement firms.

Guides & use cases

Written up on scrapebench.dev — the bench that runs and verifies this actor against the live source every night:

More actors, coverage and nightly verification results: scrapebench.dev

Works with AI assistants (MCP)

Callable as an MCP tool, so Claude, Cursor, VS Code Copilot and other MCP clients can run it directly. Grab the config from the MCP tab on this page — Apify hosts the server and keeps that snippet current, and OAuth signs you in on first connect, so no API token goes in your config file.

Then just ask:

"List the West Virginia roofing contractors licensed in Kanawha County, with phone and mailing address."

That input returned 64 licences on 2026-10-12. With no filters and no name it exports the whole state (17,495 licences), so set a county or classification before running it from an agent. Runs started this way bill exactly like any other run.