NPI Registry Scraper (NPPES Healthcare Providers) avatar

NPI Registry Scraper (NPPES Healthcare Providers)

Pricing

from $2.00 / 1,000 provider records

Go to Apify Store
NPI Registry Scraper (NPPES Healthcare Providers)

NPI Registry Scraper (NPPES Healthcare Providers)

Extract US healthcare provider records from the official NPPES NPI Registry — NPI number, specialty, license, practice address, phone, fax, authorized officials. Search by specialty, state, city, ZIP, or name. Pay per provider record.

Pricing

from $2.00 / 1,000 provider records

Rating

0.0

(0)

Developer

Steven Carleton

Steven Carleton

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

2 days ago

Last modified

Categories

Share

NPI Registry Scraper — NPPES Healthcare Provider Search, Lookup & Lead Export

Search and extract US healthcare provider records from the official NPPES NPI Registry — the CMS registry of all 8+ million providers and healthcare organizations. Get the NPI number, specialty (taxonomy), state license number, practice address, phone, fax, and for organizations the authorized official's name, title, and phone. Filter by specialty, state, city, ZIP code (wildcards), provider name, or organization name, and download clean JSON, CSV, or Excel.

This Actor reads the official CMS NPPES API — no login, no API key — and breaks the API's 1,200-record search cap: when a search exceeds the cap, it automatically fans out into ZIP-prefix sub-searches and de-duplicates by NPI, returning the complete result set in one run. (Most NPI scrapers silently stop at 1,200 — or worse, return the same page over and over, because NPPES repeats results past the cap instead of erroring.)

What data do you get?

One result per provider:

FieldExample
npi / npiUrl1265837074 + direct registry link
enumerationTypeindividual (NPI-1) or organization (NPI-2)
name / credentialJOHN A SMITH DDS / DDS
specialtyDentist, Family Medicine, Physical Therapist...
licenseNumber / licenseStateState license of the primary specialty
taxonomiesEvery specialty with license details
practiceAddressStreet, city, state, ZIP, phone, fax
mailingAddress / additionalPracticeLocationsFull location footprint
authorizedOfficialDecision maker name, title, and phone (organizations)
identifiersMedicaid and insurer IDs on the record
enumerationDate / lastUpdated / statusRegistry dates and active status

Use cases

  • Healthcare sales & marketing lists — every provider of a given specialty in your territory, with practice phone numbers: dental-supply reps pull dentists by metro ZIP prefix, device reps pull orthopedic surgeons by state.
  • Provider directory & data enrichment — join your customer or claims data to the authoritative registry by NPI; verify specialty, license, and active status in bulk.
  • New-provider detection — filter output on enumerationDate for providers who just received their NPI: new practices are prime prospects for EHR, billing, and equipment vendors.
  • Recruiting — build lists of licensed clinicians by specialty and city for outreach.
  • Credentialing & compliance — bulk-verify NPIs, licenses, and practice addresses against the official source instead of typing them into the NPPES website one at a time.
  • AI agents / MCP — a clean, filterable interface to the national provider registry for agent-driven verification and enrichment.

How to use it

Every dentist in greater Miami (ZIP prefix wildcard):

{
"taxonomyDescription": "Dentist",
"state": "FL",
"postalCode": "331*",
"maxResults": 2000
}

Physical therapists (individuals only) in Houston:

{
"taxonomyDescription": "Physical Therapist",
"state": "TX",
"city": "Houston",
"enumerationType": "individual",
"maxResults": 1000
}

Pharmacies statewide:

{
"taxonomyDescription": "Pharmacy",
"state": "CO",
"enumerationType": "organization",
"maxResults": 5000
}

The NPPES API requires at least one criterion besides state — a specialty, city, postal code, or name. Names and organization names support trailing wildcards (mayo*). Set includeRawData to true to attach the complete raw NPPES record. You are only charged for records actually returned.

Pricing

Pay per result: one charge per provider record extracted.

Suggested store pricing (set in the Apify Console → Publication → Monetization):

  • provider-record event: $0.002 per record ($2.00 per 1,000 providers)

Rationale: NPI comparables charge $0.001–$0.002 per base record — the 80-user category leader charges $0.01 actor start + $0.001/record + $0.012–0.02 per email enrichment, and the 43-user #2 charges $0.002 flat. At $2/1K with no start fee, a 2,000-dentist metro list costs $4 — versus $200–500 for the same list from a healthcare-list broker (Definitive Healthcare, IQVIA resellers).

Data source & freshness

Records come from the NPPES NPI Registry API operated by CMS (npiregistry.cms.hhs.gov) — the authoritative, legally mandated registry of every US healthcare provider with a National Provider Identifier. CMS updates it daily as providers register and update their records. Because the Actor uses the official public API instead of scraping directory sites, it cannot be blocked and the data is never second-hand.

FAQ

Do I need an API key or CMS account? No. The NPPES API is public and keyless.

Individual vs organization? NPI-1 is a person (physician, dentist, nurse practitioner...); NPI-2 is an entity (clinic, hospital, pharmacy, group practice). Filter with enumerationType, or leave it empty for both.

Does it include email addresses? NPPES does not publish provider emails — no NPI dataset legitimately includes them. You get practice phone, fax, address, and (for organizations) the authorized official's direct phone. Actors that sell "NPI emails" are enriching from other sources at 10x the price.

How complete are the results? Complete. The NPPES API hard-caps every search at 1,200 records (and silently repeats the last page beyond it) — this Actor detects the cap and automatically subdivides the search by ZIP prefix until the whole result set is fetched, de-duplicated by NPI. Verified: a Miami-area dentist search returned 1,925 unique providers in one run. Very broad searches (a whole state with no other filter) are rejected by the API itself — add a specialty, city, or ZIP prefix.

Can I search by taxonomy code? Yes — taxonomyDescription accepts either the description (Dentist) or an exact taxonomy code (122300000X).

Why do some results show a different ZIP than I searched? NPPES matches postalCode against any of the provider's addresses (practice, mailing, or secondary locations). A provider practicing in Miami with a mailing address elsewhere still matches — check practiceAddress, mailingAddress, and additionalPracticeLocations in the output.