# CMS NPPES NPI Registry Provider Search

> CMS NPPES NPI Registry Provider Search is a paid API for AI agents from project-api-gamma-sable.vercel.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-10).

Searches the CMS NPPES NPI Registry for healthcare providers by name, NPI number, organization, location, or taxonomy, returning slim JSON results with a UI link.

## Facts

- Endpoint: GET https://project-api-gamma-sable.vercel.app/paid/cms/nppes?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/cms-nppes-npi-registry-provider-search-56212499
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_rdN3Oz24AW5h-gZNiQJ0I

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability cms-nppes-npi-registry-provider-search-56212499
```

Example prompt: Look up healthcare providers in the NPPES NPI registry with last name 'Smith' in California who are listed as Family Medicine — show me up to 10 results.

## When to prefer this

Use this endpoint when you need to search or verify US healthcare provider records from the authoritative CMS NPPES NPI Registry, especially for looking up providers by name, NPI number, specialty/taxonomy, or geographic location. Prefer this over general web searches when you need structured, authoritative provider data at low cost ($0.01 USDC per call) with a payment-gated public data feed.

## Known failure modes

- HTTP 402 returned if payment is not included — requires USDC payment on Base
- Missing required 'last_name' query parameter returns a validation error
- No results returned (empty items array) when no providers match the search criteria
- Invalid NPI format (not 10 digits) may return empty or error response
- State code not recognized if not a valid two-letter US state abbreviation

## How this service works

Paid public-data feeds. Unpaid requests return HTTP 402. Prices are USDC on Base.

## Output

Returns a slim JSON object containing a list of matching NPI provider records (items array) sourced from the CMS NPPES registry, along with a uiLink for viewing results in a browser interface. Each item typically includes provider name, NPI number, organization, taxonomy, and location details.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "last_name"
     ],
     "properties": {
      "npi": {
       "type": "string",
       "description": "10-digit NPI"
      },
      "org": {
       "type": "string",
       "description": "Query param: org"
      },
      "city": {
       "type": "string",
       "description": "City name"
      },
      "skip": {
       "type": "string",
       "description": "Result skip"
      },
      "limit": {
       "type": "string",
       "description": "Max results"
      },
      "state": {
       "type": "string",
       "description": "US state code (e.g. CA)"
      },
      "number": {
       "type": "string",
       "description": "CPSC recall number (alias of recall)"
      },
      "offset": {
       "type": "string",
       "description": "Result offset"
      },
      "last_name": {
       "type": "string",
       "description": "Query param: last_name"
      },
      "first_name": {
       "type": "string",
       "description": "Query param: first_name"
      },
      "postal_code": {
       "type": "string",
       "description": "Query param: postal_code"
      },
      "enumeration_type": {
       "type": "string",
       "description": "Query param: enumeration_type"
      },
      "organization_name": {
       "type": "string",
       "description": "Query param: organization_name"
      },
      "taxonomy_description": {
       "type": "string",
       "description": "Query param: taxonomy_description"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "what": "CMS NPPES NPI Registry provider search (slim JSON + uiLink)",
  "items": [],
  "source": "/paid/cms/nppes"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/cms-nppes-npi-registry-provider-search-56212499/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from project-api-gamma-sable.vercel.app](https://www.zero.xyz/host/project-api-gamma-sable.vercel.app/llms.txt)
