Healthcare Provider Credential Check (NPI + OIG LEIE + SAM.gov) avatar

Healthcare Provider Credential Check (NPI + OIG LEIE + SAM.gov)

Pricing

$10.00 / 1,000 provider checks

Go to Apify Store
Healthcare Provider Credential Check (NPI + OIG LEIE + SAM.gov)

Healthcare Provider Credential Check (NPI + OIG LEIE + SAM.gov)

Verify US healthcare providers in one call: confirms the NPI in CMS NPPES, screens the HHS-OIG LEIE exclusion list (optionally SAM.gov), cross-checks a license number, and returns one clear / excluded / review / not_found verdict with evidence. Built for AI agents; pay per provider.

Pricing

$10.00 / 1,000 provider checks

Rating

0.0

(0)

Developer

John Seimon

John Seimon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

What does Healthcare Provider Credential Check do?

Healthcare Provider Credential Check verifies a US healthcare provider in one call. Give it an NPI (or a name + state, or an organization name) and it confirms the record in the CMS NPPES NPI Registry, screens the provider against the HHS-OIG LEIE exclusion list (List of Excluded Individuals/Entities), optionally screens SAM.gov federal exclusions, cross-checks a state license number against NPPES-reported licenses, optionally verifies that license directly with the state licensing board (Washington and Colorado), and returns a single verdictclear, excluded, review or not_found — with the evidence behind it.

It is an NPI lookup API, an OIG exclusion screening API and a provider verification API in one, built for AI agents and automated credentialing, vendor onboarding, claims and compliance workflows: normalized input, normalized output, deterministic logic (no LLM guessing), and pay-per-provider pricing.

Why use Healthcare Provider Credential Check?

  • One call, three sources. NPPES, OIG LEIE and (optionally) SAM.gov are checked together and reconciled into one verdict, instead of three separate lookups and hand-written matching logic.
  • Evidence, not opinions. Every result carries the source URL, the LEIE list date, the match strength (npi, name_dob, name_state, business_name or weak name_only) and the exact exclusion row, so an agent or an auditor can see why.
  • Built for agentic use. Clean, described input schema; flat, typed output fields; ref passthrough to join results to your own records; graceful stop when a spend cap is reached. Discoverable and callable through the Apify MCP server and payable with x402.
  • Deterministic and cheap. Rules-based matching over official data — the same input always gives the same output, at a fraction of a cent per provider.
  • Monthly compliance friendly. Re-run the same list every month (OIG recommends monthly screening); results are dated with the LEIE file version used.

What data does Healthcare Provider Credential Check return?

Each provider becomes one dataset item:

FieldTypeDescription
refstring | nullYour own id, echoed back
verdictstringclear, excluded, review or not_found
reasonsstring[]Plain-language reasons behind the verdict
npistring | nullNPI used for the check
providerNamestring | nullIndividual or organization name from NPPES
nppesStatusstring | nullA active, D deactivated
oigExcludedbooleanStrong OIG LEIE match (not reinstated)
oigMatchCountintegerLEIE rows matched, including weak name-only matches
samChecked / samExcludedbooleanSAM.gov screening status and result
licenseNumberMatchesNppesboolean | nullWhether the supplied license number appears in NPPES
licenseStatusstring | nullState board status: active, expired, suspended, revoked, probation, inactive, not_found, unavailable
licenseExpiresAtstring | nullExpiry date the board holds (YYYY-MM-DD)
licenseDisciplineFlagboolean | nullBoard action recorded against the license
licenseBoardUrlstring | nullWhere a human can confirm the license
licenseConfidencestring | nullhigh, medium or low — how well the board record was tied to the person
checkedAtstringISO-8601 timestamp
leieListDatestringDate of the OIG LEIE file used
billedbooleanfalse for invalid queries returned unbilled
detailobjectFull NPPES record (taxonomies, licenses, addresses), every LEIE match with its row, SAM matches, evidence URLs and warnings

How the verdict is decided

VerdictMeaning
clearNPPES record found (NPI confirmed, or exactly one name match); no strong OIG/SAM exclusion; license number (if given) matches
excludedA strong LEIE match — by NPI, by name and DOB, by name and state, or by business name — that has no reinstatement date; or an active SAM.gov exclusion
reviewSomething needs a human or a second look: only a weak name-only LEIE match, NPI is deactivated, a name search matched several NPPES records, the license number does not match NPPES, or the state board reports the license as anything other than a confidently matched active one
not_foundNPPES returned no record for the NPI / name supplied

Weak name-only LEIE matches never set excluded on their own, because common names produce false positives; they are surfaced as review with the LEIE row (including DOB and address) so you can confirm.

State license verification (WA, CO)

Turn on Also verify license with the state board (WA, CO) and give a provider a licenseNumber together with state: "WA" or state: "CO". The Actor then queries that state's own licensee register live, per provider, and returns what the board itself says about the license:

  • status — the board's wording (Active, Expired, Suspended, Revoked, Probation, …) preserved as detail.license.rawStatus and normalized into licenseStatus;
  • dates — first issue date and expiry date, as licenseIssuedAt / licenseExpiresAt in detail.license. If a board calls a license active while its expiry has passed, the board's wording wins and the result carries an expiration_in_past warning rather than a silently changed status;
  • disciplinelicenseDisciplineFlag, plus the case number, action, effective and completion dates for every case the register publishes (Colorado publishes one row per case; they are aggregated into a single license);
  • who holds it — the licensee's name from the register. When a name is available (yours, or the one NPPES has for the NPI) it must agree with the board record for licenseConfidence: "high"; with no name to check against, the match is medium; a disagreement sets nameMismatch and forces review, because a license number alone does not prove identity — Colorado license numbers, for instance, are not unique across license types;
  • evidencelicenseBoardUrl (the board's verification deep link where the register publishes one, otherwise the board's public lookup page), the board name, and detail.license.evidence.sourceAsOf, the date the state last refreshed the register.

The sources are the states' own public open-data registers: the Washington State Department of Health health-care provider credential data and the Colorado DORA Division of Professions and Occupations licensee data. Nothing is scraped and no login is used; a free Socrata app token can be supplied in Socrata app token to raise the rate limit on large runs.

A state board result never sets excluded on its own — a board action is not an OIG exclusion — but a license that is suspended, revoked, on probation, expired, inactive, unknown to the board, or held by a different name moves the verdict to review with the reason attached. Providers in states other than WA and CO come back with a state_license_unsupported warning and an unchanged verdict.

Billing: state license verification is billed as a separate license-verified event when a board answer is obtained; it is not billed when the board is unreachable or the state is unsupported.

How to verify a healthcare provider

  1. Open the Actor and paste NPIs into NPIs (or add providers by name in Providers).
  2. Optionally turn on Also screen SAM.gov exclusions and add a free api.data.gov key, and/or Also verify license with the state board (WA, CO) for providers whose licenseNumber and state you have.
  3. Click Start. Results appear in the dataset within seconds; download as JSON, CSV or Excel, or read them via the API.

From an AI agent: call the Actor through the Apify MCP server (search-actorscall-actor), or via the REST API with your token. The ref field lets the agent join results back to its own list.

How much does it cost to verify a provider?

Pricing is pay per event: one provider-check event per provider actually checked, whether or not the provider is found. Two kinds of item are returned with billed: false and are not charged: invalid inputs (bad NPI check digit, no name, bad state code) and results produced while a source was unavailable (sourcesDegraded: true). State license verification is billed as a separate license-verified event when a board answer is obtained; it is not billed when the board is unreachable or the state is unsupported. There is no start fee and no per-item fee.

Set Max total charge on the run to cap spend; the Actor stops cleanly at the cap and tells you how many providers were checked.

Input

{
"npis": ["1234567893"],
"providers": [
{ "firstName": "Jane", "lastName": "Smith", "state": "TX", "ref": "row-2" },
{ "organizationName": "Sunrise Clinic LLC", "state": "AZ", "ref": "row-3" },
{ "npi": "1003000134", "licenseNumber": "036-123456", "state": "IL", "ref": "row-4" }
],
"checkSam": false,
"checkStateLicense": false,
"maxProviders": 500
}
  • npis — list of 10-digit NPIs (fastest, most precise).
  • providers — objects with npi, or firstName + lastName (+ state, dob), or organizationName; optional licenseNumber and ref.
  • checkSam + samApiKey — add SAM.gov federal exclusion screening.
  • checkStateLicense (+ optional socrataAppToken) — verify licenseNumber with the state board for providers in WA or CO.
  • maxProviders — safety cap per run.

Output

{
"ref": "row-1",
"verdict": "excluded",
"reasons": ["OIG LEIE: npi match, excluded 20200115 (1128b4)"],
"npi": "1234567893",
"providerName": "JOHN A DOE",
"nppesStatus": "A",
"oigExcluded": true,
"oigMatchCount": 1,
"samChecked": false,
"samExcluded": false,
"licenseNumberMatchesNppes": null,
"licenseStatus": null,
"licenseExpiresAt": null,
"licenseDisciplineFlag": null,
"licenseBoardUrl": null,
"licenseConfidence": null,
"checkedAt": "2026-09-15T12:00:00.000Z",
"leieListDate": "2026-09-01",
"billed": true,
"detail": {
"nppes": { "npiConfirmed": true, "record": { "npi": "1234567893", "enumerationType": "NPI-1", "licenses": [{ "taxonomyCode": "207Q00000X", "taxonomyDescription": "Family Medicine", "licenseNumber": "036-123456", "state": "IL", "primary": true }] } },
"oig": { "excluded": true, "listDate": "2026-09-01", "matches": [{ "strength": "npi", "row": { "lastName": "DOE", "firstName": "JOHN", "npi": "1234567893", "state": "IL", "exclusionType": "1128b4", "exclusionDate": "20200115", "reinstatementDate": "" } }] },
"evidence": [
{ "source": "NPPES", "url": "https://npiregistry.cms.hhs.gov/api/?version=2.1&limit=10&number=1234567893", "note": "matched NPI 1234567893" },
{ "source": "OIG_LEIE", "url": "https://exclusions.oig.hhs.gov/", "note": "LEIE dated 2026-09-01; 1 match(es)" }
],
"warnings": []
}
}

Download the dataset as JSON, CSV, Excel, XML or RSS from the Storage tab, or fetch it through the API.

Tips

  • Prefer NPIs. Name searches can match several NPPES records; the Actor uses the first and lists the other candidate NPIs under review.
  • Supply state and dob with names — a matching DOB (or state) turns a weak name-only LEIE match into a strong match, and a different DOB rules a row out; state also narrows NPPES results.
  • Monthly re-screening: schedule the Actor with the same input each month; compare verdict and leieListDate across runs.
  • Large lists: batches of thousands of providers work; NPPES is queried once per provider, the LEIE is loaded once per run (cached for 24 hours).

FAQ, disclaimers and support

Is this an official CMS or OIG service? No. It reads the public NPPES API and the public OIG LEIE download and applies documented matching rules. Always confirm an excluded or review result against the official sources linked in evidence before taking action against a provider.

Does it verify state licenses with the state boards? For Washington and Colorado, yes — turn on Also verify license with the state board (WA, CO) and the license is checked against the state's own register (see above). For every other state the license number is only compared with what the provider reported to NPPES, which is self-reported.

How fresh is the data? NPPES is queried live, and so are the WA and CO license registers — each result carries the date the state last refreshed its register under detail.license.evidence.sourceAsOf. The LEIE is downloaded from OIG at most once per 24 hours; the file date is returned as leieListDate.

Legality and ethics. All sources are public US government datasets published for exactly this purpose. Do not use results to discriminate unlawfully; follow your organization's credentialing policy.

Found a problem or need another source? Open an issue on the Actor's Issues tab.