Skip to main content
Enrich

The NPI Lookup API returns the provider registered to any NPI number

Send a 10-digit NPI and get the provider's name, specialty, state license, practice address and phone, read live from the CMS NPPES registry. 2 credits, charged only when the registry has a record.

2 credits per lookupOnly charged on a matchSame credits as every other product
1Lookup NPI Lookup API showing a fictional provider, Jane Q Example, registered to NPI 1234567893 as an active hospitalist with an Illinois license, practice address and the date the number was registered

2

Credits per NPI

about $0.01 on Starter

0

Credits when not found

no record, no charge

10

Matches per name search

or look up one NPI

Live

Read from the CMS registry

NPPES, the public source

What NPI Lookup gives you

The record comes straight from the CMS registry

Every field comes from the NPPES NPI Registry, the public source run by CMS. The record is read when you ask, so a provider's update shows up as soon as the registry has it.

  • Read live from CMS NPPES
  • Individuals and organizations
  • Active or deactivated status
  • Registered and last-updated dates

Specialty and license come with every taxonomy on file

The primary specialty comes back with its taxonomy code and the state license number the provider filed against it, and every other taxonomy on file is listed beside it.

  • Primary specialty and taxonomy code
  • License number and issuing state
  • All other taxonomies
  • Sole proprietor flag

Practice and mailing addresses come with the phone number

The practice address and phone are returned both as fields and as one formatted line, along with the mailing address and any additional practice locations the provider listed.

  • Practice address and phone
  • Mailing address
  • Additional practice locations
  • Names in readable case, not all capitals

A mistyped NPI is caught before it costs anything

The check digit is tested before the registry is called, so a typo or a transposed digit is refused with a clear error and no charge, in the API, the dashboard and bulk jobs.

  • Format and check digit tested first
  • Clear error, 0 credits
  • Invalid CSV rows fail without a charge
  • No wasted registry calls

A name search finds the NPI when a name is all you have

Through the API, search by a person's first and last name or by an organization's name, narrowed by state, and get up to 10 matches to choose from. Then look the right one up by its NPI.

  • first_name, last_name and state
  • organization_name and state
  • Up to 10 matches per search
  • Charged only when there is a match

A number the registry does not hold costs nothing

You are charged 2 credits only when the registry returns a record. A number it never issued, a typo and a registry that did not answer cost 0, and that holds for bulk CSV jobs as well as the API.

  • Zero credits when not found
  • Bulk CSV with an npi column
  • The same credits as every other product
  • One API key for all of it

An NPI goes in and the registry's record comes out

01

Send a 10-digit NPI

POST the NPI, or search by name through the API. The number's check digit is tested first, so a typo is refused with a clear error and costs nothing.

request

$ POST /api/v1/npi-lookup

"npi": "1234567893"

> check digit valid

02

We read the CMS registry live

The NPPES NPI Registry is queried when you ask, and the record that comes back is the registry's own. There is no copy in between that can go stale.

processing

NPI format and check digit tested

CMS NPPES registry queried

Record read

Taxonomies and addresses structured

03

Get the record, flat and structured

Name, credential, status, specialty, license, addresses and identifiers arrive in one JSON payload. A record found bills 2 credits, and a number the registry does not hold bills nothing.

200 OK

providerJane Q Example, MD

specialtyHospitalist

license036123456, IL

active2 credits, 0 if not found

One endpoint. A 10-digit NPI number in, structured data out.

Same authentication, same credit balance, and the same response envelope as every other 1Lookup product. If you have already integrated one endpoint, this one is a URL change.

POST /v1/npi-lookup
curl -X POST https://app.1lookup.io/api/v1/npi-lookup \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "npi": "1234567893" }'

# or search by name, up to 10 matches
#   -d '{ "first_name": "Jane", "last_name": "Example", "state": "IL" }'
#   -d '{ "organization_name": "Example Health", "state": "IL" }'
200 OK
{
  "classification": {
    "found": true,
    "npi": "1234567893",
    "entity_type": "individual",
    "name": "Jane Q Example",
    "credential": "MD",
    "status": "active",
    "is_active": true,
    "primary_specialty": "Hospitalist",
    "taxonomy_code": "208M00000X",
    "license_number": "036123456",
    "license_state": "IL",
    "practice_address": "100 Example Way Ste 200, Springfield, IL, 62701-1234",
    "practice_phone": "217-555-0100",
    "enumeration_date": "2007-08-31",
    "last_updated": "2025-05-28",
    "years_enumerated": 19.1
  },
  "insights": {
    "npi_lookup_result": {
      "sole_proprietor": false,
      "taxonomies": [
        {
          "code": "207R00000X",
          "description": "Internal Medicine",
          "license_number": "036123456",
          "license_state": "IL",
          "primary": false
        },
        {
          "code": "208M00000X",
          "description": "Hospitalist",
          "license_number": "036123456",
          "license_state": "IL",
          "primary": true
        }
      ],
      "practice_location": {
        "city": "Springfield",
        "state": "IL",
        "postal_code": "62701-1234",
        "phone": "217-555-0100"
      },
      "mailing_address": { "formatted": "100 Example Way Ste 200, Springfield, IL, 62701-1234" },
      "other_identifiers": [],
      "data_source": "cms_nppes"
    }
  },
  "metadata": { "credits_used": 2, "cache_hit": false }
}

One call returns the registry's record for a provider

One call turns an NPI on a claim, a roster or a lead into the registry's record for it: who the number was issued to, whether it is still active, what the provider practices and where, with the raw JSON your code receives beside it.

app.1lookup.io/api/v1Registered: active
  • NPI1234567893
  • Entity typeIndividual
  • NameJane Q Example, MD
  • StatusActive
  • Primary specialtyHospitalist
  • Taxonomy code208M00000X
  • State license036123456, IL
  • Other specialtiesInternal Medicine
  • Practice address100 Example Way Ste 200, Springfield, IL
  • Practice phone217-555-0100
  • Registered on31 August 2007
  • Record last updated28 May 2025
200 OK, 2 credits
{
  "classification": {
    "found": true,
    "npi": "1234567893",
    "entity_type": "individual",
    "name": "Jane Q Example",
    "credential": "MD",
    "status": "active",
    "primary_specialty": "Hospitalist",
    "license_number": "036123456",
    "license_state": "IL",
    "practice_phone": "217-555-0100",
    "enumeration_date": "2007-08-31",
    "last_updated": "2025-05-28"
  },
  "insights": {
    "npi_lookup_result": {
      "taxonomies": [
        { "description": "Internal Medicine", "primary": false },
        { "description": "Hospitalist", "primary": true }
      ],
      "data_source": "cms_nppes"
    }
  },
  "metadata": { "credits_used": 2 }
}

Every field you get back

No hidden tiers. Every field below is returned on a successful lookup at the price shown above.

Identity

  • npi
  • entity_type
  • name
  • first_name
  • last_name
  • credential
  • organization_name

Status

  • status
  • is_active
  • enumeration_date
  • last_updated
  • years_enumerated
  • deactivation_date

Specialty and license

  • primary_specialty
  • taxonomy_code
  • license_number
  • license_state
  • taxonomies[]
  • sole_proprietor

Practice

  • practice_address
  • practice_phone
  • practice_location
  • additional_practice_locations[]

Mailing and other

  • mailing_address
  • other_names[]
  • other_identifiers[]
  • endpoints[]

Who uses NPI Lookup

Healthcare billing teams checking an NPI before a claim goes out

Look up the rendering or referring provider's NPI and confirm it belongs to the name on the claim, that the number is active and that the specialty fits the service, before the claim is submitted.

Credentialing and provider-enrollment teams

Start a file from the registry's record: name, taxonomy, license number and state, practice location and the date the NPI was registered. Then confirm the license with the state board.

Pharma and medical-device sales teams

Clean a prescriber or account list by checking each NPI against the registry, so outreach goes to active providers with the right specialty and practice address.

Health-tech apps onboarding providers

Let a clinician enter an NPI at sign-up and fill in their name, specialty and practice details from the registry, instead of asking them to type it all and checking it by hand.

Payers and plan administrators

Run a provider directory through a bulk job to flag deactivated numbers and records that have not been updated in years, so the directory stays accurate.

Referral and scheduling platforms

Search by name and state to find the right NPI for a provider a patient was referred to, then look it up for the practice address and phone.

Frequently asked questions

What does the NPI Lookup API return?

Send a 10-digit NPI and it returns the provider registered to it: whether it was issued to a person or an organization, the name and credential, whether the number is active or deactivated, the dates it was registered and last updated, the primary specialty with its taxonomy code, the state license number and state, every other taxonomy on file, the practice address and phone, the mailing address, and other identifiers.

Where does the NPI data come from?

From the NPPES NPI Registry, the public registry run by the Centers for Medicare & Medicaid Services (CMS), the agency that issues the numbers. The registry is read live when you ask, so the record is the registry's own and not a copy that has aged in a database.

What does a registered NPI tell me about a provider?

It tells you who the number was issued to and what the provider filed with the registry: the name, credential, specialty, state license number and state, and the practice address. Registered is the registry's own word for an issued NPI. When you need a license's current standing, the state licensing board is the place to look, and the license number and state in the record give you what you need to search there.

How much does an NPI lookup cost?

2 credits per NPI, about $0.01 on the Starter plan. You are charged only when the registry returns a record. A number the registry does not hold, a mistyped NPI and a registry that did not answer all cost 0 credits, in the API, the dashboard and bulk jobs.

What happens when I mistype an NPI?

It is refused before anything is charged. The last digit of an NPI is a check digit, calculated from the other nine, so the API catches a number with a typo or a transposed digit before it asks the registry and returns a clear error at no cost.

Can I search by name instead of by NPI?

Yes, through the API. Send first_name, last_name and state, or organization_name and state, and you get up to 10 matches, each with its NPI, name, credential, status, specialty and practice city. A name search costs 2 credits and is charged only when at least one match comes back. Look a match up by its NPI for the full record.

How current is the record?

A first lookup reads the registry when you ask, so you get the record as the registry holds it at that moment. A provider can update a record or be deactivated afterwards, and a repeat lookup of the same NPI within 7 days comes from the cache. Send bypass_cache: true to read the registry again.

Can I check a list of NPIs at once?

Yes. Upload a CSV with an npi column and you get a row per provider with the name, status, specialty, license and practice address. A row that is not a valid NPI fails without a charge. The price stays at 2 credits per record found, however long the list is.

What is the difference between an individual and an organization NPI?

Both kinds exist. An individual NPI belongs to a person such as a physician, nurse practitioner or dentist, and the record carries a credential like MD. An organization NPI belongs to a hospital, clinic, pharmacy or group practice, and the record carries the organization's name. The entity_type field says which one you have.

Does it say when a number has been deactivated?

Yes. The status field returns active or deactivated, and a deactivated record is still returned and still billed, because the answer is a real one: the number was issued and later retired. Check it before you add a provider to a claim, a referral list or an outreach campaign.

To check a single provider before you write any code, run it through the free NPI number lookup and the free NPI registry search.

Start with NPI Lookup today

7-day free trial. No contracts, cancel anytime, and your credits work across every product in the catalog.