DEV Community

lulzasaur
lulzasaur

Posted on

Verify Professional Licenses Across US States with a Single API Call

If you've ever tried to verify a professional license, you know the pain. Each state has its own licensing board, its own website, its own search interface. California's CSLB looks nothing like Texas's TDLR. Florida's DBPR has a completely different form than New York's DOB.

The Healthcare License Verification API normalizes all of this into a single REST endpoint. One call, any state, any profession.

Who Needs This

  • Staffing agencies verifying nurse credentials before placement
  • Background check companies automating license verification at scale
  • HR/compliance teams validating healthcare worker licenses
  • Credentialing platforms automating provider onboarding
  • Telemedicine companies verifying cross-state licensing

If you're doing any of this manually today — searching state websites one by one — this is the API for that.

How It Works

Healthcare Provider Lookup

Query by state, name, and license type. Results come from NPPES (the national provider database):

curl -G "https://healthcare-license.p.rapidapi.com/healthcare/verify" \
  -H "X-RapidAPI-Key: YOUR_KEY" \
  -H "X-RapidAPI-Host: healthcare-license.p.rapidapi.com" \
  -d "state=CA" \
  -d "lastName=Johnson" \
  -d "licenseType=RN"
Enter fullscreen mode Exit fullscreen mode

Response:

{
  "success": true,
  "count": 3,
  "source": "NPPES",
  "state": "CA",
  "licenseType": "RN",
  "results": [
    {
      "npi": "1234567890",
      "firstName": "Jane",
      "lastName": "Johnson",
      "licenseType": "RN",
      "taxonomyDescription": "Registered Nurse",
      "state": "CA",
      "city": "San Francisco",
      "credentials": "RN"
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Contractor License Verification

Verify contractor licenses across CA, TX, FL, and NY:

curl -G "https://healthcare-license.p.rapidapi.com/contractor-license/verify" \
  -H "X-RapidAPI-Key: YOUR_KEY" \
  -H "X-RapidAPI-Host: healthcare-license.p.rapidapi.com" \
  -d "state=CA" \
  -d "licenseNumber=1234567"
Enter fullscreen mode Exit fullscreen mode

Response includes license status, expiration, bonding info:

{
  "success": true,
  "results": [
    {
      "state": "CA",
      "source": "CSLB",
      "licenseNumber": "1234567",
      "businessName": "ABC Construction Inc",
      "licenseStatus": "Active",
      "licenseType": "B - General Building",
      "expirationDate": "2027-03-31"
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Supported Professions

22 healthcare license types across all 50 states via NPPES:

Code Profession
MD / DO Medical Doctor / Osteopathy
RN / LPN / NP / APRN Nursing
PA Physician Assistant
PT / PTA / OT / OTA Therapy
RPH / PHARMD Pharmacy
DDS / DMD Dentistry
PSYCH / DC / OD / DPM Specialists

Plus contractor and nurse verification with direct state board data.

Build a Batch Verification Script

const RAPIDAPI_KEY = process.env.RAPIDAPI_KEY;
const BASE = "https://healthcare-license.p.rapidapi.com";
const HEADERS = {
  "X-RapidAPI-Key": RAPIDAPI_KEY,
  "X-RapidAPI-Host": "healthcare-license.p.rapidapi.com"
};

async function verifyProvider(state, lastName, licenseType) {
  const params = new URLSearchParams({ state, lastName, licenseType });
  const res = await fetch(`${BASE}/healthcare/verify?${params}`, {
    headers: HEADERS
  });
  return res.json();
}

const providers = [
  { state: "CA", lastName: "Smith", licenseType: "RN" },
  { state: "TX", lastName: "Garcia", licenseType: "MD" },
  { state: "FL", lastName: "Williams", licenseType: "NP" },
];

for (const p of providers) {
  const result = await verifyProvider(p.state, p.lastName, p.licenseType);
  const count = result.count || 0;
  console.log(`${p.state} | ${p.licenseType} | ${p.lastName}: ${count > 0 ? "FOUND" : "NOT FOUND"} (${count} records)`);
}
Enter fullscreen mode Exit fullscreen mode

Python Example

import requests
import os

def verify_license(state, last_name, license_type):
    return requests.get(
        "https://healthcare-license.p.rapidapi.com/healthcare/verify",
        headers={
            "X-RapidAPI-Key": os.environ["RAPIDAPI_KEY"],
            "X-RapidAPI-Host": "healthcare-license.p.rapidapi.com"
        },
        params={"state": state, "lastName": last_name, "licenseType": license_type}
    ).json()

result = verify_license("CA", "Johnson", "RN")
print(f"Found {result['count']} results")
for r in result.get("results", [])[:3]:
    print(f"  {r['firstName']} {r['lastName']}{r['city']}, {r['state']}")
Enter fullscreen mode Exit fullscreen mode

Also available as installable packages:

npm install license-verify-api   # JavaScript
pip install license-verifier      # Python
Enter fullscreen mode Exit fullscreen mode

Use Cases in Production

Staffing Agencies: Verify nurse credentials are active before placement. One API call replaces 10 minutes of manual board searching.

Background Checks: Add license verification as a step in your pipeline. Structured JSON — no scraping or PDF parsing.

Credentialing: Provider credentialing takes 90-120 days. Automating the license check cuts days off.

Compliance Dashboards: Monitor license expiration dates for your entire staff. Alert before they expire.

Available Endpoints

Method Endpoint Description
GET /healthcare/verify Search by state, name, license type
GET /healthcare/npi/:npi Direct NPI lookup
GET /contractor-license/verify Contractor license search
GET /nurse-license/verify Nurse license search

Subscribe on RapidAPI — free tier available. Paid tiers from $9.99/month.

Top comments (0)