Tennessee Contractor License Lookup: TDCI Status & Limits avatar

Tennessee Contractor License Lookup: TDCI Status & Limits

Pricing

from $8.00 / 1,000 verified contractor records

Go to Apify Store
Tennessee Contractor License Lookup: TDCI Status & Limits

Tennessee Contractor License Lookup: TDCI Status & Limits

Verify Tennessee contractor licenses in the TDCI registry by company, name or number: status, expiration, classification, monetary limit. USD 10 per 1,000.

Pricing

from $8.00 / 1,000 verified contractor records

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Categories

Share

Tennessee Contractor License Lookup checks the Tennessee Department of Commerce and Insurance (TDCI) public registry and returns each general contractor license's number, status, expiration date, classifications, monetary limit and city, state and county. It is built for homeowners, general contractors vetting subcontractors, insurers, sureties and lead researchers, and costs USD 10 per 1,000 license records on the FREE tier (USD 8 per 1,000 on GOLD).

It fills in the same "Verify a License or Credential" search a visitor uses, choosing the Contractors and Ltd Licensed Plumbers program and the Contractor license type, then opens each matching public detail page. No account, login or cookies are needed.

What does the Tennessee Contractor License Lookup return?

Each dataset row is one TDCI general Contractor license, deduplicated by license number and name.

FieldWhat it contains
licenseeName, entityTypeBusiness or individual name, and Organization or Individual
licenseNumber, licenseType, boardProgramLicense number (for example 85359), Contractor, and the TDCI program
status, expirationDate, originalLicensureDateStatus as TDCI shows it; dates in YYYY-MM-DD
appearsActiveAndUnexpiredtrue only when status is Active and the expiration date has not passed on the retrieval date
classificationCodesClassifications on the record, for example BC, BC-A, MC, CMC-C
monetaryLimitUsd, publicModifiersMonetary limit in US dollars when shown, and other modifiers such as Aggregate Limit
city, state, postalCode, countyPublic location summary (no street address, phone or email is published)
sourceDetailUrl, detailAvailable, sourceUrlOfficial detail record, whether it was read, and the search page
sourceRetrievedAt, checkedAtTDCI's "Retrieved on" time and the Actor's UTC check time
searchType, searchQuery, sourceResultPosition, sourceResultCount, sourcePageRecordCount, sourceResultsTruncatedThe search that found the record and whether more matches exist

The OUTPUT record holds the run status (DATA, EMPTY, BLOCKED, FAILED or REJECTED), source match counts, warnings and the event-charge estimate.

How do I look up a Tennessee contractor license by number?

Set searchType to license_number and put the number in query. The Actor checks that the returned record carries exactly that number, then writes one row with status, expiration, classifications and monetary limit.

{
"searchType": "license_number",
"query": "85359",
"maxResults": 1
}

If TDCI returns a different license number, the run fails with a diagnostic instead of writing a mismatched record.

Can I search Tennessee contractors by company or last name?

Yes. Use business_name with a distinctive company name or partial name, or individual_last_name with an optional firstName:

{
"searchType": "individual_last_name",
"query": "Doe",
"firstName": "John",
"maxResults": 5
}

The Console default (business_name, Doe, up to 10 records) returned 4 licenses in about 27 seconds on 2026-10-26, including Active and Expired records and holders based in Tennessee, Georgia and Texas. Broad names can match more records than TDCI renders on its first result page; the Actor reads that first page only, so narrow the name when sourceResultsTruncated is true.

How do I read status, expiration and monetary limit?

Read status and expiration together. TDCI advises checking both, so appearsActiveAndUnexpired is false when a record says Active but its expiration date has passed. monetaryLimitUsd is the limit printed on the license; compare it with the contract value of your project, and open sourceDetailUrl for the full official record. The flag is a convenience check, not a legal determination that a contractor may bid on a specific job.

When should I use it, and when not?

Use it when you need Tennessee general contractor licenses in a workflow: subcontractor prequalification, bid or permit checks, insurance or surety underwriting, or confirming a contractor's classifications and limit before hiring.

Use another tool when:

Use it from an AI assistant

Tennessee Contractor License Lookup works from Claude, ChatGPT, Cursor or any MCP client through Apify's MCP server. Add it with https://mcp.apify.com/?tools=muhammadafzal/tennessee-contractor-license-lookup, then ask, for example: "Is Tennessee contractor license 85359 active, and what is its monetary limit?"

Run it with the API

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/tennessee-contractor-license-lookup').call({
searchType: 'business_name',
query: 'Doe River',
maxResults: 5,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.map((r) => `${r.licenseNumber} ${r.status} ${r.expirationDate} ${r.monetaryLimitUsd}`));

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("muhammadafzal/tennessee-contractor-license-lookup").call(
run_input={"searchType": "license_number", "query": "85359", "maxResults": 1}
)
for record in client.dataset(run.default_dataset_id).iterate_items():
print(record["licenseeName"], record["status"], record["expirationDate"], record["monetaryLimitUsd"])

What does the output look like?

Two of the four records from the 2026-10-26 default run (business_name, Doe), trimmed to the main fields:

[
{
"licenseeName": "DOE RIVER CONSTRUCTION, INC.",
"entityType": "Organization",
"licenseNumber": "85359",
"licenseType": "Contractor",
"boardProgram": "Contractors and Ltd Licensed Plumbers",
"status": "Active",
"expirationDate": "2028-03-31",
"originalLicensureDate": "2026-03-19",
"appearsActiveAndUnexpired": true,
"classificationCodes": ["BC", "BC-A"],
"monetaryLimitUsd": 125000,
"publicModifiers": ["Aggregate Limit"],
"city": "BUTLER",
"state": "Tennessee",
"postalCode": "37640",
"county": "Carter",
"sourceRetrievedAt": "10/26/2026 07:35 AM",
"sourceDetailUrl": "https://search.cloud.commerce.tn.gov/search/C2952503/detail",
"detailAvailable": true,
"sourceResultCount": 4,
"sourceResultsTruncated": false
},
{
"licenseeName": "DOEGE CONSTRUCTION, LLC",
"entityType": "Organization",
"licenseNumber": "81353",
"status": "Expired",
"expirationDate": "2026-07-31",
"appearsActiveAndUnexpired": false,
"classificationCodes": ["BC", "BC-A"],
"monetaryLimitUsd": null,
"city": "SEGUIN",
"state": "Texas",
"county": "Guadalupe",
"sourceDetailUrl": "https://search.cloud.commerce.tn.gov/search/C2619686/detail"
}
]

Live values change; a detail page can omit classifications, limits, dates or location parts, which then appear as empty arrays or null.

Pricing: how much does a Tennessee license check cost?

The Actor uses pay-per-event pricing with platform usage included. Each record written to the dataset is one event; there is no second charge for the same record.

EventFREEBRONZESILVERGOLD / PLATINUM / DIAMOND
Verified contractor record (one dataset row)USD 0.010USD 0.00975USD 0.0095USD 0.008
Actor start (per started GB of allocated memory)USD 0.005USD 0.005USD 0.005USD 0.005

Worked totals on the FREE tier at the default 512 MB memory (one start event):

  • One license check: 1 × USD 0.010 + USD 0.005 = USD 0.015
  • Maximum run, 25 records: 25 × USD 0.010 + USD 0.005 = USD 0.255

A search with no matches charges only the start fee. The minimum run charge limit is USD 0.015; below that the run stops as REJECTED before searching.

What are the limits?

  • 25 records per run (maxResults 1–25, default 10), taken from TDCI's first result page only.
  • Speed: one browser, one detail page at a time; the default run took about 27 seconds.
  • Scope: general Contractor licenses only. No phone, email or street address is published in this view.
  • Freshness: TDCI says its public search is updated daily. Open sourceDetailUrl or contact TDCI for consequential decisions.
  • Blocked or changed pages end as BLOCKED or FAILED with diagnostics; if a detail page fails, the row keeps its result-card data, sets detailAvailable to false, and the Actor never invents values.

FAQ

It reads TDCI's official public search and links every record to its official detail page. It is an independent tool, not affiliated with or endorsed by TDCI or the Tennessee Board for Licensing Contractors.

Can I check a contractor's monetary limit?

Yes. monetaryLimitUsd carries the limit when the detail record shows one, together with classificationCodes and modifiers such as Aggregate Limit.

Does it cover home improvement or plumbing licenses?

No. It searches the general Contractor license type in the Contractors and Ltd Licensed Plumbers program only.

Does it return phone numbers or emails?

No. TDCI's public result view shows only city, state, ZIP and county.

Why did I get fewer records than maxResults?

TDCI found fewer matches, or its first result page rendered fewer records than the total. OUTPUT and sourceResultsTruncated show when more matches exist.

How do I check many Tennessee licenses at once?

Run one license_number lookup per number from a script or an Apify schedule, or use a company-name search to collect up to 25 related records per run.

Contractor and license data from the same developer:

Tennessee Contractor License Lookup reads public TDCI license records without logging in, solving CAPTCHAs or bypassing access controls. Use it for legitimate license verification at a modest pace, follow TDCI's terms of use, and confirm current licensure on the official record before any legal or contracting decision. Board information: Tennessee Board for Licensing Contractors.

Last verified: 2026-10-26