Colorado Electrical & Plumbing License Lookup & List Scraper avatar

Colorado Electrical & Plumbing License Lookup & List Scraper

Pricing

$0.004 / license record

Go to Apify Store
Colorado Electrical & Plumbing License Lookup & List Scraper

Colorado Electrical & Plumbing License Lookup & List Scraper

Verify Colorado electrical and plumbing licences by number or name, or export them statewide: 7,841 active contractor licences and 30,654 active masters, journeymen and residential licensees (2026-10-12), with status, dates and public disciplinary actions.

Pricing

$0.004 / license record

Rating

0.0

(0)

Developer

ScrapeBench

ScrapeBench

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Pain points

  • Colorado has no state general-contractor licence: the state (DORA) licenses only electrical and plumbing work, so those are the only trade licences you can check at state level.
  • DORA's licence-detail pages answer an automated client with a human-verification check (HTTP 405, measured 2026-10-12), so a vendor list cannot be verified against them by script.
  • The state's open-data copy mixes every DORA profession (nurses, accountants, barbers...) in one dataset with one row per disciplinary action, so a raw download repeats licences and buries the trades.

What we solve

  • Verify in bulk: a list of licence numbers (EC.0102804, or just the digits) or business and person names returns each licence's current status, expiry and public disciplinary actions — every status, not just active.
  • Export the trade licences only, one row per licence: electrical and plumbing contractors (EC, PC) by default, or masters, journeymen and residential licensees, filtered by status, city, ZIP or Colorado-only addresses.
  • Each licence's disciplinary actions (case number, action, dates) are folded into one public_actions list instead of repeating the licence once per case.

Summary

Colorado's state electrical and plumbing licences from the Department of Regulatory Agencies (DORA), read fresh from DORA's open-data feed on data.colorado.gov on every run. Lookup mode takes licence numbers or business/person names and returns each licence with its status, first-issue, renewal and expiry dates, mailing city/state/ZIP and public disciplinary actions. Export mode lists licences statewide by type (contractor, master, journeyman, residential), status, city or ZIP. This is a verification and compliance dataset: DORA publishes no street address, phone or email. Pay per licence returned.

Who it's for

  • General contractors, property managers and facilities teams verifying electrical and plumbing subcontractors
  • Insurance, surety and lending teams checking licence status and disciplinary history in bulk
  • Compliance and vendor-management teams re-verifying a vendor list on a schedule
  • Suppliers and software vendors sizing the Colorado electrical and plumbing contractor market by city

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:

{
"licenseType": "contractors",
"city": "Denver",
"maxResults": 1000
}

See Inputs below for every available field.

What you get

One row per record:

FieldDescription
license_numberDORA licence number, e.g. EC.0102804
license_typee.g. Electrical Contractor, Master Plumber
license_type_codeEC, PC, ME, JW, RW, MP, JP or RP
holder_typebusiness (contractor licence) or individual
tradeelectrical or plumbing
statusActive, Expired, Revoked, Need Master Hire, ...
business_nameFirm name on a contractor licence
person_nameLicensee name on an individual licence
issue_dateFirst issued
last_renewed_dateStart of the current term
expiration_dateEnd of the current term
cityMailing city
address_stateMailing state
zip_codeMailing ZIP
public_actionsDisciplinary actions: case number, action, dates
verify_urlDORA's licence-detail page (browser)
source_urlThe open-data query for this licence

Sample:

{
"license_number": "EC.0102804",
"license_type": "Electrical Contractor",
"license_type_code": "EC",
"holder_type": "business",
"trade": "electrical",
"status": "Active",
"business_name": "LG Electrical, LLC",
"person_name": null,
"issue_date": "2023-08-16",
"last_renewed_date": "2026-10-01",
"expiration_date": "2029-09-30",
"city": "Littleton",
"address_state": "CO",
"zip_code": "80125",
"public_actions": [],
"matched_by": "license_number",
"verify_url": "https://www.colorado.gov/dora/licensing/Lookup/PrintLicenseDetails.aspx?cred=1530795&contact=1641517",
"state": "CO",
"source_url": "https://data.colorado.gov/resource/7s5z-vewr.json?licensetype=EC&licensenumber=102804"
}

Inputs

FieldRequiredTypeDefaultDescription
querynostring—A DORA licence number ('EC.0102804', 'EC 102804', or just '102804' to search every type), a business name ('LG Electrical'), or a person's name as 'LAST, FIRST' or 'FIRST LAST'. Lookups return every status (active, expired, revoked...). 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. The run log says how many licences each one matched.
licenseTypenostring—Which licences: a DORA code (EC Electrical Contractor, PC Plumbing Contractor, ME Master Electrician, JW Journeyman Electrician, RW Residential Wireman, MP Master Plumber, JP Journeyworker Plumber, RP Residential Plumber), its name, or a group: 'contractors' (EC + PC, the firms), 'individuals', 'electrical', 'plumbing' or 'all'. Empty = contractors (EC + PC) in an export, all eight in a lookup.
licenseTypesnoarray[]Several licence types or groups in ONE run, e.g. EC and ME. Combined with 'Licence type' if you fill both. An unrecognised value is dropped with a log line; if nothing you gave is recognised, the run returns a free row saying so instead of the whole state.
statusnostring"active"'active' (default) keeps Active, Active - With Conditions and Active - Restricted. 'need_master_hire' is a contractor licence that cannot practise until it hires a master. Lookups always return every status.
citynostring—Mailing city on the licence, exact match ignoring case, e.g. 'Denver' or 'Colorado Springs'.
citiesnoarray[]Several cities in ONE run. Combined with 'City' if you fill both.
zipnostring—Mailing ZIP on the licence, 5 digits.
zipsnoarray[]Several ZIPs in ONE run. Combined with 'ZIP code' if you fill both.
coloradoAddressesOnlynobooleanfalseDrop licences whose mailing address is outside Colorado (out-of-state firms hold Colorado licences).
maxResultsnointeger500Cap on licences returned — for the whole export, or per name/number in a lookup (a spend control). 100000 returns everything that matches: the eight types hold about 38,500 active licences. The run log states how many matched when the cap cuts it short.
proxyConfigurationnoobject{"useApifyProxy": false}Optional. data.colorado.gov answers direct requests; enable a proxy only if runs come back with a 'blocked' notice.

Pricing (Pay Per Event)

You pay per result (dataset-item) — no charge for empty runs. Example: 593 active electrical and plumbing contractor licences in Denver at $0.004/result ≈ $2.37.

The default export (500 licences) costs $2.00. Every active contractor licence (7,841 on 2026-10-12) costs $31.36; all eight licence types active (38,495) cost $153.98 at maxResults 100000.

Use cases

  • Vendor compliance: run your subcontractors' DORA licence numbers as a lookup batch and flag any that are expired, revoked or 'Need Master Hire - Cannot Practice'.
  • Disciplinary screening: export active contractor licences and keep the ones with public actions before awarding work.
  • Expiry tracking: export a city's active licences monthly and sort by expiration_date to see renewals coming due.
  • Market sizing: count active electrical vs plumbing contractors by city or ZIP across Colorado.

Why this actor

  • One row per licence: DORA's open data repeats a licence once per disciplinary case (95,109 rows for 94,281 licences across these eight types); here the cases are one public_actions list.
  • Straight from DORA's own open-data feed on data.colorado.gov, read fresh on every run (rows last refreshed 2026-10-12).
  • Reading and folding all 38,495 active licences took 23 s in one Apify run; the default 500-row export finished in 6 s (measured 2026-10-12).
  • A filter value it does not recognise is dropped and logged, never silently widened to the whole state. Pay per licence; outage, bad-input and no-match notices are free.

Limitations & updates

Covers only the licences the State of Colorado issues for electrical and plumbing work; general contractors are licensed locally and are not here. No street address, phone or email: DORA publishes mailing city, state and ZIP only, and a city or ZIP filter matches where the licensee's mail goes, not where they work (834 of the 7,841 active contractor licences have a mailing address outside Colorado). verify_url opens DORA's licence-detail page, which asks a browser to pass a human-verification check first. The data is as current as DORA's daily open-data refresh, not DORA's live lookup.

FAQ

Where does the data come from?

From the Colorado Department of Regulatory Agencies (DORA), Division of Professions and Occupations, through its public dataset 'Professional and Occupational Licenses in Colorado' on data.colorado.gov (7s5z-vewr). It is read on every run; its rows were last refreshed on 2026-10-12.

Which licences are covered?

The eight state electrical and plumbing licence types. Active on 2026-10-12: EC Electrical Contractor 4,751, PC Plumbing Contractor 3,090, ME Master Electrician 7,448, JW Journeyman Electrician 12,664, RW Residential Wireman 2,072, MP Master Plumber 4,956, JP Journeyworker Plumber 2,952, RP Residential Plumber 562. Apprentice registrations and work permits are not included. Colorado has no state general-contractor licence; general contractors are licensed by cities and counties, not by DORA.

Contractor licence or individual licence — which do I want?

EC and PC are contractor licences held by a business (a firm name). ME, JW, RW, MP, JP and RP are held by people. An export with no licence type returns contractor licences only; set 'Licence type' to individuals, electrical, plumbing, all, or a code to change that. Lookups search all eight types.

Does it include phone numbers, emails or street addresses?

No. DORA's open data publishes only the mailing city, state and ZIP, so this is a verification and compliance dataset rather than a contact list.

How do I look up a licence number?

Type it as DORA prints it (EC.0102804), with a space (EC 102804), or as bare digits (102804). Bare digits search every type, and the same digits can belong to different licences — EC 4176 and ME 4176 are two licences — so you may get more than one row.

What are public_actions?

Public disciplinary actions DORA lists on the licence: case number, action (for example 'CLS Letter of Admonition', 'CLS Stipulation', 'CLS Revocation'), effective date and completion date. On 2026-10-12, 418 of the 7,841 active contractor licences carried at least one.

How am I charged?

$0.004 per licence returned. The default export returns 500 licences ($2.00); Denver's active electrical and plumbing contractor licences were 593 ($2.37) on 2026-10-12. Rows explaining an outage, an unrecognised filter or no match are free.

Which actor to choose

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

  • Arizona Contractor License Lookup & Leads Scraper (ROC) — You need Arizona contractors — the ROC statewide export with phone and principals, or a licence lookup.
  • Iowa Contractor Registration Lookup & Leads Scraper (DIAL) — You need Iowa contractors — the active DIAL roster with phone and email, by trade and county.
  • Delaware Contractor License Lookup & List Scraper (DOR + DPR) — You need Delaware contractor business licences and electrical, plumbing and HVACR licences in one export.
  • DC Contractor License Lookup & List Scraper (DLCP) — You need Washington, DC contractor licences — general contractor, home improvement and asbestos firms with address.
  • 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.
  • Ohio Contractor License Lookup & Leads Scraper (OCILB) — You need Ohio electrical, HVAC, plumbing, hydronics or refrigeration contractors — the full OCILB roster, by trade and county.
  • Nebraska Contractor Registration Lookup & Leads Scraper (NDOL) — You need Nebraska contractors — every current NDOL registration, by service and county, with phone on request.
  • West Virginia Contractor License Lookup & Leads Scraper (WVCLB) — You need West Virginia contractors — every current WVCLB licence with phone and mailing address, by county or classification.
  • 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 active electrical and plumbing contractor licences with a Denver mailing address, with expiry dates and any disciplinary actions."

That input returned 593 licences on 2026-10-12. With no name, number or filters it exports the active contractor licences statewide (7,841), so set a city or ZIP before running it from an agent. Runs started this way bill exactly like any other run.