license-verifier
Verify US professional licenses against official state records to uncover disciplinary actions, NPI matches, and OIG exclusions. Handles single lookups and bulk roster screening.
Instructions
License Verification API — Nurses, MDs & OIG Exclusions. Primary source verification for US professional licenses. Search 19 state boards by name or license number: status, expiration, disciplinary actions. Cross-checks the NPPES NPI registry and screens the HHS-OIG exclusion list. Bulk roster screening. Reads live from the official government source. Store page: https://apify.com/malonestar/license-verifier
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City to filter licensees by. Not every board publishes a city column. | |
| name | No | Full-name search that works across every board (handles combined name fields). Use this if lastName/firstName return nothing. | |
| roster | No | Batch mode: verify a whole roster of professionals in one run. Each item: {firstName, lastName, state (optional — omit to search every board), profession (optional), middleName (optional, improves scoring)}. Emits one verdict row per entry with verdict, match_score, match_tier, NPI cross-walk, OIG exclusion screen and board-action status. Capped at 200 entries per run. Every verdict row is billable, including NOT_FOUND and INCONCLUSIVE_SOURCE_ERROR — a verified negative is the deliverable. | |
| states | No | State codes or explicit board IDs. A bare state code searches EVERY board in that state - e.g. "TX" covers TDLR trades AND the Board of Nursing (RN, LVN, APRN). Use a hyphenated ID to target ONE board: IL-IDFPR, CT-DCP, CO-DORA, TX-TDLR, TX-BON (RN), TX-LVN, TX-APRN, OR-CCB, OR-BCD, NY-RACING (horse racing only), NY-RE, NY-COS, NY-NOTARY, NY-APPRAISER, WA-DOH (health professions), WA-CPA, WA-CONTRACTOR, DE-DPR, VT-DFS. States: CO, CT, DE, IL, NY, OR, TX, VT, WA. Example: ["WA"]. | |
| lastName | No | Licensee last name (partial match). Example: "Threlkeld". Applied by default if omitted: "". | |
| firstName | No | Licensee first name (partial match). Supplying it raises match confidence sharply — first + last name exact is the threshold for a confident verdict. Example: "Judson". Applied by default if omitted: "". | |
| npiLookup | No | For each roster entry, look the person up in the federal NPI registry and use their self-reported state license number to pin down the exact board record. This is what turns 125 same-name candidates into one verified match, and it returns NPI, taxonomy and practice address. Applied by default if omitted: true. | |
| maxResults | No | Maximum number of license records to return per board. Each returned row is billable, so start small. Example: 10. Applied by default if omitted: 200. | |
| statusOnly | No | Return only license number, type, status, expiration, provenance and the OIG exclusion flags. Handy for recurring renewal monitoring. NOTE: this is the SAME price per row as a full record — it returns less data, not cheaper data. Applied by default if omitted: false. | |
| licenseType | No | e.g. "Registered Nurse", "Real Estate", "Cosmetology", "Professional Engineer". Boards without a license-type column skip this filter and say so in the log and in unsupported_filters. | |
| businessName | No | Business or DBA name to search (partial match). | |
| licenseNumber | No | Exact license number to verify. The most precise search available — use it when you have it. | |
| checkDiscipline | No | Join the best-matching licensee against secondary board-action datasets: Delaware DPR disciplinary actions and the NYS Office of Professional Medical Conduct. A failed lookup is reported as unknown, never as 'no action on file'. Applied by default if omitted: true. | |
| onlyDisciplined | No | Return only licensees with a disciplinary history. Honoured by IL-IDFPR, CO-DORA, DE-DPR, WA-DOH, TX-BON and TX-LVN. Target those board IDs directly rather than a bare state code, or sibling boards that publish no disciplinary column will also return rows (they are reported in unsupported_filters). Applied by default if omitted: false. | |
| socrataAppToken | No | Optional free Socrata app token to raise rate limits. | |
| screenExclusions | No | Check every result against the federal HHS-OIG List of Excluded Individuals/Entities (83,000+ records, refreshed monthly). Matched on NPI first, then last+first+state. A surname-only hit is NEVER reported as an exclusion — it is flagged for review instead. Adds no per-row cost. Applied by default if omitted: true. | |
| rosterLimitPerBoard | No | How many candidate records to pull per board for each roster entry before scoring. Higher values reduce the chance of missing the right person for a common surname; candidates_truncated tells you when the cap was hit. Applied by default if omitted: 100. |