Roster operations
Bulk NPI enrichment for provider rosters and CSV workflows
Ops and credentialing teams maintain spreadsheets of NPIs. Send up to 50 identifiers per request and get per-row statuses without writing your own NPPES batch client.
Typical workflow
- Export a column of NPIs from your roster CSV (see docs for CSV → JSON prep).
- POST POST /api/v1/npi/bulk with a JSON npis array (1–50 items).
- Map each item by status: found, not_found, upstream_error, or quota_exceeded.
- Persist normalized provider fields and batch meta.counts for audit trails.
Input → output
Concrete API examples
Replace YOUR_API_KEY with a dashboard key. Full schemas live in OpenAPI.
Batch request
curl -sS \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"npis":["1003000126","1932100864","1851789159"]}' \
"https://healthproviderapi.com/api/v1/npi/bulk"Batch response (mixed statuses)
{
"data": [
{
"npi": "1003000126",
"status": "found",
"provider": { "npi": "1003000126", "entityType": "NPI-1" },
"cached": true,
"requestId": "req_bulk01_00",
"error": null
},
{
"npi": "1932100864",
"status": "not_found",
"provider": null,
"cached": false,
"requestId": "req_bulk01_01",
"error": null
},
{
"npi": "1851789159",
"status": "upstream_error",
"provider": null,
"cached": false,
"requestId": "req_bulk01_02",
"error": {
"code": "upstream_unavailable",
"message": "The upstream provider registry is temporarily unavailable."
}
}
],
"meta": {
"requestId": "req_bulk01",
"counts": {
"requested": 3,
"found": 1,
"notFound": 1,
"upstreamErrors": 1,
"quotaExceeded": 0,
"cacheHits": 1
}
}
}