US Healthcare Organization Data — NPI Registry (NPPES) avatar

US Healthcare Organization Data — NPI Registry (NPPES)

Pricing

$4.00 / 1,000 company records

Go to Apify Store
US Healthcare Organization Data — NPI Registry (NPPES)

US Healthcare Organization Data — NPI Registry (NPPES)

Look up US healthcare organizations and providers in the official NPPES NPI registry by name, NPI number, state or taxonomy. Returns NPI, legal and doing-business-as names, taxonomy specialty, licence numbers, practice and mailing addresses, phone and authorized official.

Pricing

$4.00 / 1,000 company records

Rating

0.0

(0)

Developer

Berkan Kaplan

Berkan Kaplan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

US Healthcare Organization Data — NPI Registry (NPPES) 🏥

foXLabs US registry-data series: Pharma Companies (Drugs@FDA) · Device Manufacturers (FDA)

🎉 Turn the US National Provider Identifier registry into clean, structured healthcare-organization data — no login, no API key, one row per organization. Built for medical-device & pharma sales, healthcare recruiters, and credentialing / provider-network / claims-integrity teams.

🔍 What is the US Healthcare Organization Data — and when should you use it?

Every US entity that bills for healthcare must hold a National Provider Identifier. Give this actor an organization name (Mayo Clinic) or a 10-digit NPI (1881018208) and it returns matching organizations — name, NPI, taxonomy/specialty, practice address, phone, the authorized official (a named decision-maker), mailing address and practice-location count — as clean rows you can filter, export or feed to an AI agent.

Use it when you need: every hospital, clinic, lab, pharmacy or group practice matching a name; a specialty-targeted list by taxonomy and state; a recruiter or sales list with a named contact; or resolving a known NPI to its organization.

Use something else when: you need an individual clinician roster at scale (set enumerationType to NPI-1), or firmographics NPPES doesn’t hold such as revenue or tax id — pair this with a firmographic actor from Fox Labs.

🤖 Use with AI agents

Already on the Apify MCP server? Ask for this Actor by name: foxlabs/npi-healthcare-organization-data.

Your agent can pay for its own runs. This Actor is pay-per-event with agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — no Apify account or API token of its own. Billing is the same either way: per delivered record, never for errors.

Otherwise paste this into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

I want to pull data using the Apify Actor `foxlabs/npi-healthcare-organization-data`.
Input: `queries` is a list of organization names or 10-digit NPI numbers. `maxResultsPerQuery` caps rows per query (default 50). Optional `state` and `enumerationType` (NPI-2 organizations, NPI-1 individuals, or any).
Start with:
{ "queries": ["Mayo Clinic"], "maxResultsPerQuery": 50 }
Ask me what to look up, run the Actor, then summarise the rows as a table.

Things you can ask your agent for:

  • "Pull every Mayo Clinic organization and group them by specialty."
  • "List the clinical labs in Ohio with a named authorized official."
  • "Resolve NPI 1881018208 to its organization, address and taxonomy."

The machine-readable API, MCP config and OpenAPI definition live at apify.com/foxlabs/npi-healthcare-organization-data.md.

📋 Overview

Everything you need to turn the NPPES NPI Registry — CMS’s official, keyless JSON API into clean, structured data — in one actor, with no login, cookies or API key.

Why teams pick this actor:

  • Whole registry, one call — name or NPI in, matching organizations out, with a named decision-maker.
  • 🎯 Relevance-ranked — a name search leads with the organization actually called that, not a firm that merely lists it as a former name.
  • 🧭 Specialty-native — taxonomy code + description on every row; filter by state.
  • 🧹 No empty-promise columns — only fields NPPES actually carries; the decision-maker is a real authorizedOfficial object.
  • 💰 Pay only for results — per-row pricing, empty/failed lookups never billed.
  • 🤖 Agent-ready — MCP + x402 agentic payments.

✨ Features

  • 🔍 Name or NPI lookup — organization-name search (relevance-ranked) or exact 10-digit NPI.
  • 🏥 Full organization profile — name, status, practice + mailing address, phone, practice-location count, DBA names.
  • 🧑‍💼 Decision-maker — the authorized official’s name, title and phone where the registry lists one.
  • 🧬 Taxonomy — primary + all specialty taxonomies with code, description and license.
  • 📦 Clean export — deduplicated camelCase rows, ready for CSV/Excel/JSON.

🎬 Quick Start

curl -X POST "https://api.apify.com/v2/acts/foxlabs~npi-healthcare-organization-data/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "queries": ["Mayo Clinic"], "maxResultsPerQuery": 50 }'

🚀 Getting Started (3 steps)

  1. Choose your targets — organization names (Mayo Clinic, LabCorp) or 10-digit NPIs.
  2. Set the capmaxResultsPerQuery limits rows per query (default 50); add state to narrow.
  3. Run and export — get a clean dataset as JSON, CSV or Excel.

📥 Input

{
"queries": ["Mayo Clinic", "LabCorp", "1881018208"],
"maxResultsPerQuery": 50,
"state": "OH",
"enumerationType": "NPI-2"
}
FieldTypeDescription
queriesarrayOrganization names or 10-digit NPI numbers. Numbers are exact lookups; names run a relevance-ranked registry search.
maxResultsPerQueryintegerCaps rows per query (default 50, max 200 per NPPES).
statestringOptional 2-letter state filter for name searches (e.g. OH).
enumerationTypestringNPI-2 organizations (default), NPI-1 individuals, or any.
maxConcurrencyintegerHow many queries to fetch at once (default 5).
includeRawbooleanAttach the source’s untouched record under raw.

📤 Output

One row per record, saved to the dataset. Every row also carries query, scrapedAt, and — when a lookup fails — an error explaining why (never silently dropped, never billed).

FieldTypeDescription
companyNamestringOrganization (or individual) name
registrationNumberstringThe 10-digit NPI — the join key
statusstringactive / inactive
industry / industryCodestringPrimary taxonomy description + code
taxonomiesarrayAll specialties with code, description, license, state
authorizedOfficialobjectNamed decision-maker: name, title, phone
address / city / postalCodestringPractice location
mailingAddressstringMailing address where it differs
phonestringPractice phone
doingBusinessAsarrayOther / DBA names
practiceLocationCountintegerNumber of secondary practice locations
sourceUrlstringPublic NPPES provider-view URL
{
"companyName": "MAYO CLINIC",
"registrationNumber": "1881018208",
"status": "active",
"industry": "General Acute Care Hospital",
"industryCode": "282N00000X",
"authorizedOfficial": { "name": "…", "title": "…", "phone": "…" },
"address": "…, ROCHESTER, MN, 55905, US",
"practiceLocationCount": 0,
"sourceUrl": "https://npiregistry.cms.hhs.gov/provider-view/1881018208"
}

💼 Use cases

1. Territory + specialty targeting — medical-device / pharma reps sizing accounts by specialty and location. Input: organization names or a state + enumerationType: NPI-2. Output: organizations by taxonomy + address. Use: build a territory plan with named contacts.

2. Healthcare recruiter sourcing — find employers by type and location with a contact. Input: names or state filter. Output: organizations + authorizedOfficial. Use: a sourcing list in minutes.

3. Credentialing / network integrity — verify an organization’s NPI, status and taxonomy. Input: known NPIs in queries. Output: exact organization records. Use: reconcile a provider directory.

🔗 Integration

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('foxlabs/npi-healthcare-organization-data').call({ "queries": ["Mayo Clinic"], "maxResultsPerQuery": 50 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('foxlabs/npi-healthcare-organization-data').call(run_input={ "queries": ["Mayo Clinic"], "maxResultsPerQuery": 50 })
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

Automation (n8n / Zapier / Make): schedule or webhook → HTTP request to the actor API with your queries → handle the JSON dataset → push to a sheet, CRM or dashboard.

📊 Pricing

Pay-per-event: $0.002 per delivered record. Empty or failed lookups are never billed. Bulk queries scale linearly; you pay for the rows you actually get. View current pricing.

❓ FAQ

Do I need an NPPES account, login or API key? No. This reads the public CMS NPPES API — the same registry the government publishes for exactly this purpose.

What do I search by? An organization name (relevance-ranked) or a 10-digit NPI (exact). Set enumerationType to NPI-1 for individual clinicians.

Why did a name return a differently-named organization? NPPES also matches a query against former / "doing business as" names. We rank primary-name matches first, and the matched other-name appears in doingBusinessAs.

How current is the data? Every run queries NPPES live, so results are as fresh as the registry.

Can I export to CSV / Excel / JSON? Yes — directly from the Apify dataset.

🐛 Troubleshooting

  • Fewer rows than expected — raise maxResultsPerQuery (NPPES caps a single query at 200), or drop the state filter.
  • A name returns an unexpected organization — it matched a former/DBA name; check doingBusinessAs, or search the exact NPI.
  • No rows for a name — NPPES needs at least two characters and matches on the registered name; try the organization’s legal name or its NPI.

⚠️ Trademark

Independent tool built on the public CMS NPPES NPI Registry. Not affiliated with or endorsed by CMS or any named health system. Organization names and marks belong to their owners and are used for identification only.

This actor reads organization registry data (business, not patient, data) from an official US government API published for public use. Results can still contain personal data (e.g. an official’s name); personal data is protected by the GDPR and similar laws, so only process it with a legitimate basis. See Apify’s blog post on the legality of web scraping.

🤝 Support & contact

Changelog

0.2 — 2026-09-06

  • Relevance-ranked name search. NPPES matches a query against the legal name and every "other/DBA" name, and returns hits in NPI order — so a firm that merely lists your term as a former name could sort above the organization actually called that. Name searches now rank primary-name matches first (stable within a rank; number lookups stay exact).
  • Dropped empty-promise columns. Removed taxNumber, employees, capital, website, email and officers — NPPES never carries them. The decision-maker is delivered in the richer authorizedOfficial field instead.
  • Cleaner prefills. Default examples now return the organization you meant on the first row: Mayo Clinic, LabCorp, Stanford Health Care, plus a raw-NPI example (1881018208).
  • Output schema linked in actor.json so the Store renders the Output tab.

0.1

  • Initial release: organization and individual-provider lookup from the NPPES NPI Registry by organization name or 10-digit NPI, returning taxonomy, authorized official, practice-location count and mailing address.