Use case
Verify Maryland MHIC Contractor Licenses
Look up Maryland home improvement contractors by MHIC registration number or name and confirm the licence is active, with its expiry and business address.
Say you run the installer network for a window and siding retailer in Maryland, and before each season’s jobs are assigned you have to confirm that every installer on the roster still holds an active Maryland Home Improvement Commission (MHIC) licence; on 2026-10-12 MHIC listed 21,622 active ones. Your roster is a spreadsheet: an MHIC registration number for most installers, and only a company name for the ones who signed up before anyone asked for it.
The manual way, and what it costs
MHIC’s public query is free and is the official answer. Pick the registration-number search, type the number, for example 161740, and read the licensee, trade name and expiry. For a roster of 15 installers that is a quarter of an hour, and it is the right way to do it.
It stops being reasonable when the roster is long or the numbers are missing. A business-name search is a substring match, so “Titan” returns every active firm with Titan anywhere in its name (12 on 2026-10-12), and people are in a separate index you have to search again by last name. The query also lists active licences only, with no status column, so an installer whose licence has lapsed is simply missing, which looks exactly like a typo.
The faster way
Maryland Contractor License Lookup & List Scraper (MHIC) runs every line of the roster against the same query in one run.
{
"queries": [
"161740",
"Titan"
],
"maxResults": 50
}
queries takes one registration number or name per line, as many as you have. A number returns that registration; a name is searched in both MHIC’s business-name index and its personal-name index, and the results are merged. maxResults caps each line at 50 licences, so a one-word name cannot run away with the bill. On Apify on 2026-10-12 this two-line input returned 13 licences in 74 seconds, 60 of which were the actor waiting out a 429 from MHIC’s rate limit.
What comes back
The number returned the one licence it names:
{
"license_number": "161740",
"license_suffix": null,
"person_name": "TSGAKRSTOS A DAFLA",
"business_name": "A TEAM LLC",
"address": "710 GEORGE ST",
"city": "BALTIMORE",
"address_state": "MD",
"zip_code": "21201",
"expiration_date": "2027-05-07",
"license_category": "CONTRACTOR/SALESMAN",
"business_reference": "05-163491",
"status": "Active",
"phone": null,
"matched_by": "license_number",
"license_type": "Home Improvement License",
"state": "MD",
"source_url": "https://www.dllr.state.md.us/cgi-bin/ElectronicLicensing/OP_Search/OP_search.cgi?calling_app=HIC::HIC_business_location"
}
The name returned 12, all from the business-name index, from TITAN BUILD LLC in Towson to GAMMA TITAN CONSTRUCTION LLC in Suitland and TITANIUM RESTORATION LLC in Clarksburg. They sit in 10 different cities, and 2 have a business address outside Maryland (Magnolia, Delaware and Kingwood, West Virginia). That spread is the reason to verify by number wherever you have one. matched_by says which line produced each row: license_number, business_name or person_name.
What you’d do with it
Export to CSV and join it back to the roster on license_number. A roster number that comes back with no row is not active with MHIC and goes to whoever manages that installer. Then sort on expiration_date: the earliest of these 13 runs out on 2027-01-14, so it gets a renewal reminder before the season starts. For installers you only have a name for, read the name rows once, record the right registration number, and verify by number from then on. Re-run before each season; at $0.004 a licence, 200 installers cost $0.80.
Worth knowing
MHIC lists active licences only and publishes no status history, so the actor can tell you a licence is active today and when it expires, not why a missing one lapsed. There is no phone and no email in the output, because MHIC publishes neither. 562 registrations statewide carry a suffix such as -01, so match on the number and the suffix together. A line that matches nothing adds no row and is logged, and a search MHIC’s rate limit refuses for several minutes comes back as a free notice row, so check the run log for which lines of a batch came back empty.
Run it yourself: How to run Maryland Contractor License Lookup & List Scraper (MHIC) covers lookups and exports step by step.
To build a list of new installers rather than check existing ones, Export Annapolis, Maryland Home Improvement Contractors exports every active licensee with an Annapolis business address. If some of your installers also work in the District, DC Contractor License Lookup & List Scraper (DLCP) checks their DC home improvement licences.
Last updated 2026-10-12