West Virginia Insurance License Lookup (NAIC SBS)
Pricing
from $5.00 / 1,000 results
West Virginia Insurance License Lookup (NAIC SBS)
Search and verify insurance producer licenses in West Virginia via the NAIC State Based Systems public API. Returns NPN, license type, lines of authority, status, and expiration date.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Tony
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Verify insurance producer licenses in West Virginia using the NAIC State Based Systems public API. Returns name, NPN, license type, lines of authority, status, expiration date, and address. Best for NPN-based verification of specific producers — name searches are capped at 25 results by the API. No proxy required — this actor calls a government JSON endpoint directly.
Who is this for? Compliance teams at carriers, MGAs, and agencies who need to verify that their appointed producers hold an active license in West Virginia. If you manage a book of producers and need auditable proof of licensure, this actor automates what would otherwise be a manual lookup on the NAIC website — at $0.005 per record.
Part of a 25-state portfolio. Separate actors exist for every NAIC SBS state (IL, IA, NC, NJ, MO, TN, WI, CT, and more). Run each state actor independently and join results on the
npnfield to build a cross-state compliance report.
⚠️ Important: use NPN lookup, not name search
The NAIC SBS API returns at most 25 results per query — a hard server-side limit with no pagination. Searching by last name for a common surname ("Smith", "Johnson") will silently truncate at 25 results.
The right workflow for compliance verification:
- Export your producer list from your AMS as a CSV
- Copy the NPN column
- Paste NPNs into the NPN List field (one per line)
- Run — you get back exactly one record per NPN, no truncation risk
What is an NPN? A National Producer Number (NPN) is the unique ID assigned to every licensed insurance producer by the NIPR. You can find it on a producer's license certificate, in your AMS, or by searching nipr.com.
Name search is best for one-off spot checks on a specific person, not bulk verification.
Input
NPN List (recommended for bulk runs)
Paste one National Producer Number per line in the NPN List field (replace the example values with your own before running):
123456798765435551234
Each NPN is looked up independently. Results are deduplicated automatically.
Run time and cost: 100 NPNs ≈ 60 seconds, ~$0.50. 500 NPNs ≈ 5 minutes, ~$2.50.
Large batches: For runs over 500 NPNs, the actor processes queries sequentially with a 500 ms delay between requests. If the NAIC API returns an error for a specific query, that query is skipped and logged — the run continues for all remaining NPNs. To check for skipped queries after a run, open your run in the Apify Console and click the Log tab — search for [ERROR] lines.
One-Off Search
Fill in Last Name (and optionally First Name) for a one-off search. Remember the 25-result cap applies here.
Other options
| Field | Default | Description |
|---|---|---|
| Active Licenses Only | On | Excludes expired, inactive, and terminated licenses. Turn off only if you need a full license history — unchecking will surface expired and terminated records going back to the producer's first license date. |
| Entity Type | Individual | Switch to Business/Agency for agency lookups |
| State | WV | Pre-filled — only change if searching a different SBS state |
Output Behavior
Not found / no active license
Two special sentinel records can appear in your results — understanding them is important before wiring this actor into a pipeline:
- If an NPN has no license on record in West Virginia, the actor writes a record with
"status": "NOT FOUND"and"is_active": false. - If an NPN exists but all licenses are expired or terminated (and Active Licenses Only is on), the actor writes
"status": "NO ACTIVE LICENSE"and"is_active": false.
Both sentinel records include every output field (nulls/empty arrays for unresolvable fields) so your spreadsheet or AMS ingestion doesn't get column-count mismatches.
Sentinel records are charged at the same rate as normal records ($0.005 each) — you're paying for the verification, not just the record. A NOT FOUND result is still a confirmed compliance check.
Unknown status values
The status field reflects exactly what the NAIC API returns. Known values are listed in the output table below, but NAIC may introduce new status strings over time. If you encounter an unknown value, the is_active boolean is still reliable — it is derived solely from the exact string "Active", so any unknown status will always produce is_active: false.
Output
Each row in the Dataset is one license record. Key fields:
| Field | Example | Notes |
|---|---|---|
npn | "1234567" | National Producer Number — use this to join results across states |
license_number | "1234567" | State license number (often same as NPN on SBS states) |
name | "Mary Ann Johnson" | Title-cased, First Last order |
first_name | "Mary" | First word of given name |
middle_name | "Ann" | Middle name/initial if present; null otherwise |
last_name | "Johnson" | Surname |
license_type | "Insurance Producer" | License class |
license_type_code | "PRO" | Short code for license class. Known values: PRO (Insurance Producer), SAJ (Staff Adjuster), ADJ (Adjuster), CSL (Consultant) |
status | "Active" | One of: Active, Expired, Inactive, Terminated, Surrendered, Revoked, NOT FOUND, NO ACTIVE LICENSE. Additional values may exist — see Output Behavior above. |
is_active | true | Boolean — use this for filtering; reliable even for unknown status values |
lines_of_authority | [{"loa": "Life", "effective_date": "2010-06-01"}] | Array of LOA objects. Each has loa (string) and effective_date (ISO date or null). Empty array if no LOAs assigned. |
effective_date | "2010-06-01" | Date this license version became effective (ISO 8601) |
expiration_date | "2027-05-31" | License expiration date (ISO 8601) |
residency | "Resident" | Resident or Non-Resident |
business_phone | "304-555-0100" | Formatted as XXX-XXX-XXXX |
address_city | "Charleston" | Title-cased city parsed from source |
address_state | "WV" | Producer's home state (may differ from search jurisdiction for non-residents) |
address_zip | "25301" | 5-digit ZIP (or ZIP+4 if available); null if not present in source data |
address_raw | "CHARLESTON, WV 25301" | Unmodified source address — use as a fallback if the parsed city/state/ZIP fields produce unexpected results |
dba_name | — | DBA name — present and populated for Business/Agency records only |
fein | — | Federal EIN — present and populated for Business/Agency records only |
designated_home_state | null | Reserved for compact/non-resident workflows; always null on NAIC SBS states |
Example record (Individual)
{"npn": "1234567","license_number": "1234567","jurisdiction": "WV","licensee_type": "Individual","name": "Mary Ann Johnson","first_name": "Mary","middle_name": "Ann","last_name": "Johnson","license_type_code": "PRO","license_type": "Insurance Producer","lines_of_authority": [{ "loa": "Life", "effective_date": "2010-06-01" },{ "loa": "Accident and Health", "effective_date": "2010-06-01" }],"status": "Active","is_active": true,"residency": "Resident","designated_home_state": null,"effective_date": "2010-06-01","expiration_date": "2027-05-31","business_phone": "304-555-0100","address_city": "Charleston","address_state": "WV","address_zip": "25301","address_raw": "CHARLESTON, WV 25301","source_url": "https://sbs.naic.org/solar-external-lookup/?jurisdiction=WV&searchType=Licensee","scraped_at": "2026-05-27T12:00:00.000Z"}
Business/Agency records include two additional fields:
dba_name(string or null) andfein(string or null).
Exporting results
After a run completes, click the Export button in the Dataset tab to download your results as CSV or Excel. This works directly in the Apify Console — no additional tools needed.
Pricing
Pay-per-event at $0.005 per license record returned. Sentinel records (NOT FOUND, NO ACTIVE LICENSE) are charged at the same rate — you're paying for the verification, not just the record. Empty searches are never charged. A typical bulk run of 100 NPNs costs $0.50.
States in this portfolio
AL · AK · AR · CT · DC · ID · IL · IA · KS · MO · MT · NH · NJ · NM · NC · ND · OK · OR · RI · SD · TN · VT · WV · WI
Data source
NAIC State Based Systems External Lookup — public government data, no authentication required.