NPI Registry Scraper: US Healthcare Providers avatar

NPI Registry Scraper: US Healthcare Providers

Pricing

$10.00 / 1,000 provider records

Go to Apify Store
NPI Registry Scraper: US Healthcare Providers

NPI Registry Scraper: US Healthcare Providers

Look up US doctors, clinics and hospitals in the official NPPES NPI Registry by number, name, speciality or location. Flattens addresses, taxonomies and licences into clean columns. No key, no login, no scraping.

Pricing

$10.00 / 1,000 provider records

Rating

0.0

(0)

Developer

Alex Burton

Alex Burton

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Look up any US doctor, clinic, hospital, pharmacy or lab in the official NPPES NPI Registry — the national directory every American healthcare provider is required to be listed in. Search by name, speciality or location, or resolve a list of NPI numbers.

Two modes:

ModeWhat you get
Search the registryEvery provider matching a name, speciality, city, state or ZIP, with addresses, licences and specialities flattened into columns
Look up NPI numbersFull records for a list of ten-digit NPI numbers

Why use this one

  • Official API only. This reads npiregistry.cms.hhs.gov/api/, the endpoint CMS publishes for exactly this purpose. No HTML parsing, no key, no login, and nothing that breaks when the website is redesigned.
  • The nested arrays are flattened for you. NPPES buries the practice address, mailing address, primary speciality and state licence inside three separate arrays. This Actor lifts them into plain columns like practiceCity, primaryTaxonomy and licenseNumber, while keeping the full arrays if you need them.
  • It tells you when a query is rejected. NPPES refuses searches it considers too broad and replies with an error object instead of results. Most scrapers report that as "0 results". Here the run stops and shows the API's own message as its status, so you know to add a city or a speciality rather than assuming nobody matched.
  • Check-digit validation. NPI numbers carry a Luhn check digit. A mistyped number is flagged in the log before the request goes out.

How to use it

  1. Choose What to do.
  2. For a search, fill in at least one of Last name, Organization name, City, Postal code or Speciality. NPPES will not accept a state on its own.
  3. Click Start, then download results as JSON, CSV, Excel or HTML, or fetch them through the Apify API.

Example input: pediatricians in Wichita

{
"mode": "search",
"providerType": "individual",
"taxonomyDescription": "Pediatrics",
"city": "Wichita",
"state": "KS",
"maxResults": 200
}

Example input: resolve a batch of NPI numbers

{
"mode": "lookup",
"npiNumbers": ["1073554416", "1013973775"]
}

Output

Every item has type: "provider". The dataset has ready-made Providers and Full detail table views.

{
"type": "provider",
"npi": "1073554416",
"enumerationType": "NPI-1",
"isOrganization": false,
"name": "JANE A SMITH",
"credential": "M.D.",
"sex": "F",
"status": "A",
"primaryTaxonomyCode": "208000000X",
"primaryTaxonomy": "Pediatrics",
"licenseNumber": "04-12345",
"licenseState": "KS",
"practiceAddress": "1010 N MAIN ST, WICHITA, KS, 672031234",
"practiceCity": "WICHITA",
"practiceState": "KS",
"practicePhone": "3165551212",
"enumerationDate": "2006-05-23",
"lastUpdated": "2024-02-11",
"url": "https://npiregistry.cms.hhs.gov/provider-view/1073554416"
}

Organization records fill organizationName, authorizedOfficialName and authorizedOfficialTitle instead of the personal name fields.

Pricing

Pay only for results:

ResultPrice
Provider record$10.00 per 1,000

Set a maximum spend per run in the run options and the Actor stops cleanly when it's reached.

Limits to know about

These come from NPPES, not from this Actor:

  • 1,200 records per query. The API returns at most 200 per page and refuses to skip past 1,000. To cover a whole state, split the search by city, ZIP prefix or speciality.
  • A state alone is not a valid search. NPPES answers Field state requires additional search criteria. Pair it with a city, name, ZIP or speciality.
  • Wildcards need at least two characters before the *, and only work at the end of a value.
  • The registry updates weekly, so a very recent enumeration or address change may not appear yet.
  • Deactivated providers stay in the registry with a different status, so filter on that if you only want active ones.

A note on responsible use

These records are published by CMS and are public by law, but they describe real named people and include their practice addresses and phone numbers. You are responsible for how you use them. US marketing and privacy rules — including the TCPA for calls and texts, CAN-SPAM for email, and state laws — apply to you, not to the registry. Some states also restrict commercial use of licence data. This Actor is built for research, directory building, credential verification and data cleaning; please don't treat it as a cold-call list.

FAQ

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

What is a taxonomy code? The standard code for a provider's speciality, like 208000000X for Pediatrics. Each record carries one or more, and the one marked primary is lifted into primaryTaxonomy.

Why does a search return fewer results than the registry website? The website and the API apply matching rules slightly differently, and the API caps a query at 1,200 records. Narrowing by city or speciality usually closes the gap.

Can I monitor for new providers in an area? Yes. Schedule the Actor in Apify Console and compare runs on the enumerationDate field. The registry refreshes weekly, so a daily schedule is more often than needed.

Is this legal? The NPI Registry is public data published by the US government with no authentication. Collecting it is fine; what you then do with it is governed by the marketing and privacy laws above.

Feedback

Found a bug or need a field that's missing? Open an issue on the Actor's Issues tab.