← Health board

TN DOCI

Tennessee Contractor License Lookup & Verify (TN DOCI)

Verify any Tennessee contractor or tradesperson by license number or name — type, status, expiration, city, and county — from the official TN DOCI registry.

100%golden-diff pass
Run it on Apify verified nightly

Verification

100%golden-diff success
355canary runs
0days since last canary run

Output fields

Authoritative field set from the dataset schema.

FieldType
statestring|null
license_numberstring|null
business_namestring|null
person_namestring|null
license_typestring|null
statusstring|null
issue_datestring|null
expiration_datestring|null
citystring|null
countystring|null
addressstring|null
zip_codestring|null
phonestring|null
bond_amountstring|null
bond_companystring|null
insurance_companystring|null
matched_bystring|null
source_urlstring|null
scraped_atstring|null

Sample row

{
  "state": "TN",
  "license_number": "56787",
  "business_name": "JOHNSON PLUMBING",
  "person_name": null,
  "license_type": "Contractor",
  "status": "Expired",
  "issue_date": null,
  "expiration_date": "03/31/2016",
  "city": "JOHNSON CITY",
  "county": "Washington",
  "address": null,
  "zip_code": "37605",
  "phone": null,
  "bond_amount": null,
  "bond_company": null,
  "insurance_company": null,
  "matched_by": "business_name",
  "source_url": "https://search.cloud.commerce.tn.gov/search/C49031/detail"
}

Inputs

FieldTypeReqDefaultDescription
query string no "Johnson Construction" A TN contractor license number (numeric, e.g. '56787') OR a business/person name. A numeric query is looked up by license number; anything else is searched against the licensee/business name index.
queries array no ["Johnson Construction"] Look up many in ONE run instead of starting a run per lookup. Takes the same values as 'Search query'. Combined with 'Search query' if you fill both, and duplicates are removed. Billing is unchanged: you are charged per record returned, not per entry submitted.
board string no "Contractors and Ltd Licensed Plumbers" Filter results to a specific TN DOCI board. Defaults to 'Contractors and Ltd Licensed Plumbers' (the main contractor board). Leave blank to search all boards.
maxResults integer no 50 Cap on the number of records returned PER ENTRY, not per run — so a batch cannot silently return only the first 50 rows overall and read as 'the rest don't exist'. Defaults to 50.
proxyConfiguration object no {"useApifyProxy":false} Optional. The TN portal is usually reachable directly, but its edge returns 403 to some datacenter IPs. If a run returns a 'TN portal unavailable' row, enable Apify Proxy with the RESIDENTIAL group.

Pricing

Pay per result (dataset-item) — no charge for empty runs.
Example: 100 verified license records at $0.004/result ≈ $0.40.

FAQ

Where does the data come from?

The official Tennessee Department of Commerce and Insurance public licensee registry, via the Tyler entellitrak REST API.

What can I search by?

A TN DOCI license number (numeric, e.g. 56787) or a business/licensee name. Both return matching licenses, deduped by license number.

What fields do I get?

License number, business/licensee name, license type, status, expiration date, city, county, and ZIP code.

How am I charged?

Pay-per-result — per license match returned. No charge for searches with no results.

Is this personal data?

It's public professional-license data (business and license-holder records as TN DOCI publishes them); we add no personal/PII enrichment.

How current is it?

It reflects the live TN DOCI registry at the moment of lookup. The state does not publish an update schedule for the registry, so treat each record as current as of its run.

Can I filter by board or license type?

Yes — the 'board' input defaults to 'Contractors and Ltd Licensed Plumbers'. Set it to any TN DOCI board name (e.g. 'Contractors: Home Improvement') or leave blank to search all boards.

Guides & use cases

Related actors