Endpoint
GET https://npiregistry.cms.hhs.gov/api/?version=2.1&number=1003000126
The response is JSON with result_count and a results array. Each result has basic (name, credential, status, dates), addresses, taxonomies, identifiers, practiceLocations and other_names.
Useful parameters
| Parameter | What it does |
|---|---|
number | Exact NPI |
first_name, last_name | Individual name. A trailing * works as a wildcard after two letters. |
organization_name | Organization name, wildcard allowed |
enumeration_type | NPI-1 or NPI-2 |
taxonomy_description | Specialty text, such as Dentist (not the code) |
city, state, postal_code | Location. State alone is not allowed. Combine it with something else. |
limit, skip | Up to 200 results per call, and you can skip up to 1,000 |
Limits to know about
- One NPI per request, so checking a list means one call per number.
- No more than 1,200 results for any search, which rules out pulling a whole specialty.
- Deactivated NPIs simply return no results.
- The API sends no caching headers and can be slow at busy times.
For lists, our bulk lookup handles the calls, the retries and the deactivation check for you and returns a spreadsheet. We are looking at offering an API with batch requests. Tell us if you would use one.