NPI Registry Scraper — Healthcare Provider Leads
Pricing
$2.00 / 1,000 results
NPI Registry Scraper — Healthcare Provider Leads
Extract healthcare provider contact data from the CMS NPPES NPI Registry. Get phone, address, specialty, and license info for doctors, dentists, nurses, and organizations. Filter by specialty, state, city, or NPI number. 8M+ US providers. Flat CSV-ready output.
Pricing
$2.00 / 1,000 results
Rating
0.0
(0)
Developer
Sourabh Kumar
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
🏥 NPI Registry Scraper — Healthcare Provider Leads from CMS NPPES
Search and extract healthcare provider data from the official CMS NPPES NPI Registry. Get contact details, specialties, addresses, and license info for doctors, dentists, nurses, and medical organizations across the US. No login, no scraping — direct access to a free public government API.
⚡ Why this NPI Registry scraper?
The NPI Registry is the authoritative source for US healthcare provider data — 8M+ providers, maintained by the federal government, always up to date. Most teams query it manually or build their own integrations. This actor makes it plug-and-play:
- 💰 Affordable: Just $2.00 per 1,000 providers.
- 🚀 Fast: Pure API calls — no browser, no proxy, no headless Chrome. 1,000 results in seconds.
- 🏛️ Official data: Directly from the CMS NPPES API — the same database hospitals and insurers use.
- 📋 Flat CSV-ready output: All 23 fields in one flat record. Drop straight into Excel, Salesforce, or your CRM.
- 🔍 Flexible filtering: Search by specialty, state, city, zip code, name, or look up a specific NPI number.
- 🏢 Individuals + organizations: Covers both licensed practitioners (NPI-1) and healthcare organizations like hospitals and clinics (NPI-2).
📦 What data can you extract?
Each provider record includes 23 data fields:
- 🪪 Identity: NPI number, provider type (individual/organization), status (Active/Deactivated)
- 👤 Name: First name, last name, middle name, credential (MD, DO, RN, DDS, etc.)
- 🏥 Organization: Organization name (for hospitals, clinics, groups)
- 🔬 Specialty: Primary specialty description, taxonomy code, license number, license state
- 🚻 Demographics: Gender
- 📍 Location: Street address, suite, city, state, zip code, country
- 📞 Contact: Phone number, fax number
- 📅 Registry: Enumeration date, last updated date
💲 How much does it cost?
The NPI Registry scraper uses pay-per-event pricing — you only pay for what you extract:
- $2.00 per 1,000 providers
Example costs:
| What you extract | Providers | Cost |
|---|---|---|
| Family medicine doctors in Texas | 500 | $1.00 |
| All dentists in California | 2,000 | $4.00 |
| Full specialty export (e.g., all NPs in NY) | 5,000 | $10.00 |
🎯 Use cases
- 💊 Pharma sales: Build targeted lists of prescribers by specialty and geography for rep territory planning
- 🦷 Dental supply: Find all dentists in a region with phone and address for outreach campaigns
- 🏥 Medical device reps: Identify surgeons and specialists in your territory with verified contact details
- 💻 Healthcare SaaS: Enrich your provider database or validate NPI numbers at scale
- 🏢 Practice management software: Generate lists of practices (NPI-2) by state for sales prospecting
- 🧾 Medical billing: Verify provider credentials, NPI numbers, and license state before processing claims
- 📊 Market research: Analyze provider density, specialty distribution, and coverage gaps by region
- 🔗 CRM enrichment: Append verified phone, fax, address, and specialty data to existing provider records
📥 Input
| Field | Type | Description | Default |
|---|---|---|---|
taxonomy | string | Provider specialty (e.g., "Family Medicine", "Dentist", "Nurse Practitioner") | — |
state | string | Two-letter US state code (e.g., "CA", "TX", "NY") | — |
city | string | City name (e.g., "Los Angeles", "Houston") | — |
postalCode | string | 5-digit US zip code (e.g., "90210") | — |
firstName | string | Provider first name. Supports wildcards (e.g., "Jo*" matches John, Jose) | — |
lastName | string | Provider last name. Supports wildcards (e.g., "Sm*" matches Smith, Smythe) | — |
npiNumber | string | Look up a single provider by exact 10-digit NPI number | — |
providerType | string | Filter by type: "both", "individual", or "organization" | "both" |
maxResults | number | Maximum number of providers to return. Leave empty for unlimited. | No limit |
Note: The NPI API requires at least 2 search criteria. Combining
taxonomy+stateis the most common pattern. A single filter likestatealone will return an error.
💡 Example input
{"taxonomy": "Family Medicine","state": "CA","maxResults": 500}
{"taxonomy": "Dentist","city": "Houston","state": "TX","providerType": "individual","maxResults": 200}
{"npiNumber": "1245319599"}
📤 Output
Each provider is stored as a flat JSON object with 23 fields:
{"npi": "1245319599","type": "individual","firstName": "Sarah","lastName": "Mitchell","middleName": "L","credential": "MD","gender": "F","specialty": "Family Medicine","taxonomyCode": "207Q00000X","licenseNumber": "A123456","licenseState": "CA","organizationName": null,"phone": "310-555-0192","fax": "310-555-0193","address": "1234 Wilshire Blvd","suite": "Suite 400","city": "Los Angeles","state": "CA","zip": "90010","country": "US","enumerationDate": "2003-06-12","lastUpdated": "2024-11-08","status": "Active"}
You can download results in JSON, CSV, Excel, or connect via API.
🔬 Supported specialties
Search by any specialty description from the CMS taxonomy. Common examples:
| Category | Example specialties |
|---|---|
| Primary care | Family Medicine, Internal Medicine, Pediatrics, Geriatric Medicine |
| Dental | Dentist, Oral & Maxillofacial Surgery, Orthodontics, Endodontics |
| Vision | Optometrist, Ophthalmology |
| Mental health | Psychiatry & Neurology, Clinical Psychology, Clinical Social Worker |
| Nursing | Nurse Practitioner, Registered Nurse, Certified Nurse Midwife |
| Allied health | Physical Therapist, Occupational Therapist, Speech-Language Pathologist |
| Surgery | General Surgery, Orthopedic Surgery, Plastic & Reconstructive Surgery |
| Other | Chiropractic, Podiatry, Dermatology, Cardiology, Radiology |
| Organizations | Hospital, Clinic/Center, Group Practice, Pharmacy, Laboratory |
Tip: Use partial names —
"Nurse"will match Nurse Practitioner, Registered Nurse, and other nurse specialties.
🏛️ Data source
All data comes directly from the CMS NPPES NPI Registry — the official National Plan and Provider Enumeration System maintained by the Centers for Medicare & Medicaid Services (CMS), US Department of Health & Human Services.
- API:
https://npiregistry.cms.hhs.gov/api/?version=2.1 - Coverage: 8M+ active and deactivated healthcare providers in the United States
- Update frequency: The registry is updated daily by CMS
- License: Free public government data — no copyright restrictions
- No login required: Open public API, no API key needed
This is the same authoritative source used by hospitals, insurance companies, and healthcare clearinghouses for provider verification.
💡 Tips and notes
- 🔗 Two criteria minimum: The NPI API requires at least 2 search filters. Always combine
taxonomy+state, ortaxonomy+city+state. Single-field searches will fail. - 🔍 Wildcards: Append
*to names for wildcard search (e.g.,"Sm*"matches Smith, Smythe). Requires at least 2 leading characters. - 🏥 Organizations: Set
providerTypeto"organization"to find hospitals, clinics, group practices, and labs (NPI-2 entities). Organization records haveorganizationNameinstead of first/last name. - 📍 Address type: The scraper prefers LOCATION (practice) addresses over MAILING addresses — giving you where the provider actually works, not where they receive mail.
- 🔢 NPI lookup: Use
npiNumberto look up a single specific provider. The NPI must be exactly 10 digits. - 📊 Pagination: The API caps at 200 results per request. The scraper automatically paginates using the
skipparameter to fetch all matching results up to yourmaxResultslimit. - 📋 CSV export: All output fields are flat (no nested objects), making results immediately compatible with CSV/Excel export and CRM import.
- ✅ Active vs deactivated: The
statusfield showsActiveorDeactivated. Filter in your CRM if you only want active providers.