Reference Data
NPI Registry
Real-time access to the National Plan and Provider Enumeration System (NPPES) NPI Registry. Search providers by NPI, name, specialty, or location with always up-to-date data.
Get Provider by NPI
GET
/v1/npi/{npi}curl -X GET "https://api.medref.io/v1/npi/1234567890" \
-H "Authorization: Bearer YOUR_API_KEY"Response
{
"npi": "1234567890",
"entity_type": "individual",
"status": "active",
"enumeration_date": "2006-05-15",
"last_update": "2024-01-10",
"name": {
"first": "John",
"last": "Smith",
"credential": "MD",
"prefix": "Dr."
},
"practice_address": {
"line1": "123 Medical Center Dr",
"line2": "Suite 400",
"city": "New York",
"state": "NY",
"zip": "10001",
"phone": "212-555-0100",
"fax": "212-555-0101"
},
"mailing_address": { ... },
"taxonomies": [
{
"code": "207R00000X",
"description": "Internal Medicine",
"primary": true,
"state": "NY",
"license": "123456"
}
],
"identifiers": [
{
"type": "MEDICARE",
"identifier": "ABC123",
"state": "NY"
}
],
"other_names": []
}Search Providers
GET
/v1/npi/searchcurl -X GET "https://api.medref.io/v1/npi/search?last_name=Smith&state=NY&taxonomy=207R00000X&limit=20" \
-H "Authorization: Bearer YOUR_API_KEY"Query Parameters
| Parameter | Type | Description |
|---|---|---|
| first_name | string | Provider first name (partial match) |
| last_name | string | Provider last name (partial match) |
| organization | string | Organization name for entity type 2 |
| state | string | Two-letter state code |
| city | string | City name |
| zip | string | ZIP code (5 or 9 digit) |
| taxonomy | string | Provider taxonomy code |
| entity_type | string | individual or organization |
Validate NPI
Quickly validate an NPI using the Luhn algorithm and check if it exists in the registry.
GET
/v1/npi/validate/{npi}curl -X GET "https://api.medref.io/v1/npi/validate/1234567890" \
-H "Authorization: Bearer YOUR_API_KEY"
// Response
{
"npi": "1234567890",
"valid_format": true,
"exists": true,
"status": "active"
}