Nursys APInursys.com ↗
Access Nursys QuickConfirm nurse licensure records via API. Search by name, license number, or NCSBN ID across 58 US jurisdictions.
What is the Nursys API?
The Nursys API provides 2 endpoints for querying nurse licensure records from Nursys QuickConfirm, covering all 58 US states, territories, and nursing jurisdictions. The search_nurse endpoint accepts name, license number, or NCSBN ID as search inputs and returns matched individuals with their associated licenses. A second endpoint, get_jurisdictions, returns the full list of participating boards of nursing along with their participation status and last data submission dates.
curl -X GET 'https://api.parse.bot/scraper/82f9d1fe-f8a1-43dd-93ea-1a85d1aef854/search_nurse?state=78&last_name=Smith&first_name=John&license_type=2' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace nursys-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Nursys Nurse Licensure API — verify nursing credentials across US jurisdictions."""
from parse_apis.Nursys_Nurse_Licensure_API import Nursys, LicenseType, ParseError
client = Nursys()
# List participating nursing boards to discover state IDs for search
for board in client.jurisdictions.list(limit=5):
print(board.jurisdiction, board.state_id, board.board_of_nursing)
# Search for a nurse by name (requires last_name, first_name, license_type, state)
nurse = client.nurses.search(
last_name="Smith",
first_name="John",
license_type=LicenseType.RN,
state="78",
limit=1,
).first()
if nurse:
print(nurse.name, nurse.ncsbn_id)
for lic in nurse.licenses:
print(f" {lic.license_type} - {lic.state} - {lic.license_number}")
# Handle errors gracefully when searching by NCSBN ID
try:
result = client.nurses.search(ncsbn_id="99999999", limit=1).first()
if result:
print(result.name, result.ncsbn_id)
except ParseError as exc:
print(f"Search failed: {exc.code}")
print("exercised: jurisdictions.list / nurses.search (by name) / nurses.search (by NCSBN ID)")
Search for nurse licensure records by name, license number, or NCSBN ID. Name search requires last_name, first_name, license_type, and state. License number search requires license_number and state. NCSBN ID search requires only the ncsbn_id. Returns a list of matching individuals, each with their associated license records across jurisdictions. Requires solving a reCAPTCHA v2 security verification.
| Param | Type | Description |
|---|---|---|
| state | string | Numeric ID of the jurisdiction/state. Required for name search and license number search. Examples: 78 (Alabama), 94 (Alaska), 96 (Arizona), 12 (California-RN). |
| ncsbn_id | string | NCSBN Public ID for ID-based search. When provided, other fields are not required. |
| last_name | string | Last name of the nurse. Required for name search. Partial matches accepted. |
| first_name | string | First name of the nurse. Required for name search. |
| license_type | string | Numeric ID of the license type. Required for name search. Values: 2 (PN), 3 (RN), 8 (APRN-CNP), 6 (APRN-CRNA), 5 (APRN-CNM), 7 (APRN-CNS). |
| license_number | string | License number for license number search. Requires state to be specified. |
{
"type": "object",
"fields": {
"total": "integer count of individuals returned",
"results": "array of individual objects, each with name, ncsbn_id, and licenses array"
},
"sample": {
"data": {
"total": 1,
"results": [
{
"name": "JOHN DENSON SMITH",
"licenses": [
{
"state": "ALABAMA",
"last_name": "SMITH",
"first_name": "JOHN DENSON",
"license_type": "RN",
"license_number": "1-098042"
}
],
"ncsbn_id": "11918149"
}
]
},
"status": "success"
}
}About the Nursys API
Nurse License Search
The search_nurse endpoint supports three distinct lookup modes. A name-based search requires last_name, first_name, license_type, and state. The license_type field accepts numeric IDs mapping to credential types: 2 (PN), 3 (RN), 8 (APRN-CNP), and 6 (APRN-CRNA). The state field takes a numeric jurisdiction ID — for example, 78 for Alabama. A license number search requires license_number and state. An NCSBN ID search requires only the ncsbn_id field and returns results without any other parameters. Partial matches on last_name are accepted. The response includes a total count, plus a results array where each individual object contains their name, ncsbn_id, and a licenses array.
Participating Jurisdictions
The get_jurisdictions endpoint requires no input parameters and returns all 58 jurisdictions participating in Nursys QuickConfirm. Each jurisdiction object includes the board name, participation level, and the date of the board's most recent data submission. This is useful for understanding coverage gaps — if a board submitted data several days ago, results for nurses in that jurisdiction may not reflect the most recent licensure changes.
Coverage and Scope
Nursys QuickConfirm is the primary multi-state nurse license verification system maintained by NCSBN (National Council of State Boards of Nursing). The 58 jurisdictions it covers include all US states plus several territories. Not every board participates at the same level, which the get_jurisdictions endpoint reflects through the participation status field on each jurisdiction object.
The Nursys API is a managed, monitored endpoint for nursys.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when nursys.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official nursys.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Verify a registered nurse's active license status before onboarding for a healthcare staffing platform
- Batch-validate nursing credentials across multiple states using NCSBN ID lookups
- Check APRN-CRNA or APRN-CNP credential types by license type ID during credentialing workflows
- Audit which state boards have submitted updated data recently using the get_jurisdictions endpoint
- Integrate nurse license lookup into HR software to flag expired or missing credentials
- Build a compliance dashboard that surfaces participation status for all 58 nursing jurisdictions
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Nursys have an official developer API?+
What does the search_nurse endpoint return for each matched individual?+
ncsbn_id), and a licenses array. The licenses array contains the credential records associated with that individual across participating jurisdictions. The endpoint also returns a total count of matched individuals.Does the API return disciplinary actions or license expiration dates?+
How current is the license data for each jurisdiction?+
get_jurisdictions endpoint returns a last data submission date for each of the 58 jurisdictions, so you can check how recently a specific board pushed updates. Boards that submitted data less recently may not reflect same-day licensure changes.Can I search nurses across all states at once without specifying a state?+
state parameter — they return results across all participating jurisdictions using just the ncsbn_id. Name searches and license number searches both require a state value. Multi-state sweeps without a known NCSBN ID are not currently supported in a single call. You can fork this API on Parse and revise it to add a looped multi-jurisdiction search endpoint.