Connecticut State Licenses & Credentials
Pricing
from $0.03 / 1,000 connecticut credential records
Connecticut State Licenses & Credentials
All 2.67M Connecticut state credentials (public open data): every professional licence, business registration and brand registration the State issues. Holder name, credential type and number, issuing board, status, dates and address. Search by name, type, status, city or ZIP.
Pricing
from $0.03 / 1,000 connecticut credential records
Rating
0.0
(0)
Developer
Wenhao Yang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Connecticut keeps one register of every credential it issues - professional licences, business and LLC registrations, brand registrations - and it is open data. This actor turns that register into a charged-per-record search, filter and aggregate tool over all ~2.67M credentials (~2,665,748 as of 2026-09-27; the register updates daily).
Built for: licence verification and screening, renewal and lapsed-licence sweeps, market-sizing a trade by city or ZIP, entity and business-name diligence, and anyone who needs the State's own credential record rather than one board's search box at a time.
What it covers
Each record carries:
- the holder - name, business name and DBA where the State has them
- the credential - id, number, the full credential code, the type and subcategory code, and the plain-English credential name (e.g. CERTIFIED GENERAL REAL ESTATE APPRAISER)
- the credential type code - the State's code for the credential. It is not always a board mnemonic: 28.8% of rows carry a numeric code (
10,70,1,20) - the status - the State's own status word, plus its reason where the State records one (80.7% of rows)
- the dates - issue, effective and expiration
- the address - street, city, state and ZIP
- the refresh stamp - when the State last touched the row
The fine print that matters
This is a statewide register, not a professional-licence list. Read type before anything else: INDIVIDUAL alone is 1,877,222 rows, but the register also holds 224,188 BUSINESS rows, 120,545 LIMITED LIABILITY COMPANY, 109,366 CORPORATION and 239,648 brand registrations (the type values are the State's own spellings). Filtering by type is how you reach the population you actually want; without it you are reading the whole state.
status must be matched exactly, and that is not a technicality. The State publishes 19 statuses - ACTIVE, INACTIVE, ACTIVE IN RENEWAL, PENDING, QUALIFIED, LAPSED, EXPIRED APPLICATION, APPROVED, CLOSED, DENIED, RETIRED, ACTIVE UNDER REVIEW and more. ACTIVE is 751,075 rows and ACTIVE IN RENEWAL is a further 65,819, but INACTIVE is 1,648,157. A substring match on "ACTIVE" returns INACTIVE too - a 3x over-count on the single most common question asked of this register. This actor matches status exactly, and rejects the query rather than quietly widening it.
active is a separate flag from status and does not mean the same thing. It is a State-maintained boolean: 866,941 rows true, 1,798,807 false. Use it when you want the State's own live/not-live call; use status when you need to know why.
The register is mostly individuals, so company fields are thin. businessName is populated on 27.8% of rows and dba on 7.5%. The subcategory is filled on 9.9%. They are returned as fields, but nothing in this listing rests on them.
The dates carry sentinels at both ends, and future expiration is real. issueDate reaches back to 1800-11-09 on one row; expirationDate runs out to 3004-06-30. The actor drops values outside 1900-2036 rather than presenting them as dates. Note that a licence expiring in 2028 is a live licence, not an error - so the ceiling is deliberately wide and a "future" expiration is passed through; only the floor is fenced, and every date filter applies that fence so a range can never sweep the 1800 placeholder in.
credentialType has 518 distinct values and city runs past the source's 1,000-group cap. Neither is offered as an aggregate dimension - that would return hundreds to thousands of billed rows for one query. Both remain searchable.
Typical questions
- "Is licensed, and is the licence current?"
- "Every business or LLC credential in a city."
- "Licences expiring in the next 90 days - a renewal sweep. Use
expiringFromandexpiringBeforetogether:expiringBeforeon its own also matches every credential that has already lapsed (1.62M of the 1.69M it matches; a single run delivers at most 10,000 rows)." - "Lapsed and expired credentials in a trade."
- "How many active credentials sit in each state."
- "All credentials at an address or ZIP."
- "Aggregate by status, type or state."
Inputs
| Input | What it does |
|---|---|
mode | rows (default) / aggregate |
credentialId / credentialNumber / fullCredentialCode | exact credential identity |
name / businessName / dba | holder / business / trade name substring |
type | INDIVIDUAL / BUSINESS / LIMITED LIABILITY COMPANY / CORPORATION / LBD BRAND and more |
credentialType | exact code, e.g. RCG, PEN, HIC (518 in all) |
subcategory | subcategory substring (9.9% filled) |
status | exact State status - 19 values |
activeOnly | the State's own active flag |
city / state / zip | address filters; zip matches as a prefix |
issuedFrom / issuedTo | issue-date range (inclusive) |
expiringFrom / expiringBefore | expiration window - both ends, so a renewal sweep does not sweep in everything already lapsed |
groupBy | aggregate over status / type / state |
maxResults | cap records (default 50) |
Default run = 50 credentials, most recently added first - a plain read of the register, fast enough for the daily auto-test. Note the newest rows are usually pending applications, which have no dates yet; filter by status or issuedFrom when you want completed credentials. For a broad view use aggregate.
Example inputs
One credential by id
{ "credentialId": "5" }
Licences held by a name
{ "name": "SMITH", "maxResults": 5 }
Active Connecticut real-estate appraisers
{ "type": "INDIVIDUAL", "credentialType": "RCG", "activeOnly": "true", "state": "CT", "maxResults": 5 }
Business credentials in a city
{ "type": "BUSINESS", "city": "NEW HAVEN", "maxResults": 5 }
How the register splits by status
{ "mode": "aggregate", "groupBy": "status" }
Low cost
From $0.00005 per record, down to $0.00003 at Gold Pay-per-event: you are charged per record delivered, and nothing for the query. Cost scales with what you pull, not with the size of the register, and each record is metered individually - one name's credentials cost a fraction of a cent.
Example output
One credential - credentialId=5 returns the holder, the credential, its
status and dates:
{"platform": "ct-licenses","source": "connecticut-licenses","mode": "rows","groupKey": "","groupCount": "","groupBy": "","credentialId": "5","credentialNumber": "194","fullCredentialCode": "RCG.0000194","credentialCode": "CERTIFIED GENERAL REAL ESTATE APPRAISER","name": "MICHAEL FAZIO","businessName": "","dba": "","type": "INDIVIDUAL","credentialType": "RCG","credentialSubcategory": "","status": "ACTIVE","statusReason": "CURRENT","active": "true","issueDate": "1997-05-01","effectiveDate": "2026-05-01","expirationDate": "2027-04-30","address": "23 SHERMAN ST STE 201","city": "FAIRFIELD","state": "CT","zip": "068245868","recordRefreshedOn": "2026-03-12","sourceUpdatedAt": "2026-09-26"}
An aggregate row - {"mode": "aggregate", "groupBy": "status"} returns one
row per status, with the record fields blank:
{"platform": "ct-licenses","source": "connecticut-licenses","mode": "aggregate","groupKey": "INACTIVE","groupCount": "1648157","groupBy": "status","credentialId": "","name": "","status": "","city": "","sourceUpdatedAt": "2026-09-26"}
Notes
- Source: State of Connecticut, published on
data.ct.govas public open data. No login, no key. - Freshness: every record carries
sourceUpdatedAt- the newest refresh stamp in the register (measured: the day before the probe). - Coverage: all Connecticut credentials. Holders are not all in Connecticut - the address state has 190 distinct values (CT 1,995,593, then NY 146,407, MA 89,750) plus 14,571 rows with none - 191 groups in the aggregate.