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.
Verification
Output fields
Authoritative field set from the dataset schema.
| Field | Type |
|---|---|
state | string|null |
license_number | string|null |
business_name | string|null |
person_name | string|null |
license_type | string|null |
status | string|null |
issue_date | string|null |
expiration_date | string|null |
city | string|null |
county | string|null |
address | string|null |
zip_code | string|null |
phone | string|null |
bond_amount | string|null |
bond_company | string|null |
insurance_company | string|null |
matched_by | string|null |
source_url | string|null |
scraped_at | string|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
| Field | Type | Req | Default | Description |
|---|---|---|---|---|
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