OrbTop

State Chiro / Osteopath / Acupuncturist License Scraper

LEAD GENERATIONBUSINESSOTHER

State Chiropractor, Osteopath & Acupuncturist License Scraper

Scrapes US state license boards for chiropractors, osteopaths (DOs) and acupuncturists. Returns license number, status, issue date, business address and an NPI cross-reference as structured JSON. Currently covers New York; Florida is planned and not yet live.


License Board Scraper Features

  • Three professions in one actor — chiropractor, osteopath, acupuncturist
  • License status, issue date and expiration date on every record
  • Disciplinary and enforcement actions captured where the board publishes them
  • NPI cross-reference for records that appear in NPPES
  • Last-name and status filters
  • Source board and source URL on every record, so any claim is checkable
  • No proxy or login required

What can you do with license board data?

  • Credentialing teams — Verify a practitioner's license status and expiration before onboarding.
  • Healthcare recruiters — Build a list of actively licensed practitioners in a state and specialty.
  • Payers and networks — Screen provider directories against the primary source rather than a vendor's copy.
  • Compliance and risk — Surface disciplinary history that provider-directory aggregators tend to omit.
  • Medical device and pharma sales — Target practitioners by profession and location with verified business addresses.

How License Board Scraper Works

  1. You choose a profession and the states to search.
  2. The scraper queries each state board's public license lookup.
  3. Records are normalised into one schema, so additional state boards will land in the same shape.
  4. Where a matching NPI exists in NPPES, it is attached. Records stream to the dataset, stopping at maxItems.

Input

{
  "profession": "chiropractor",
  "states": ["NY", "FL"],
  "licenseStatus": "active",
  "maxItems": 500
}

Narrow to one surname in New York:

{
  "profession": "acupuncturist",
  "states": ["NY"],
  "lastName": "nguyen",
  "maxItems": 100
}
Field Type Default Description
profession string chiropractor chiropractor, osteopath, or acupuncturist
states array ["NY","FL"] Two-letter state codes. Only NY returns data today — FL is accepted but not yet implemented
lastName string Substring last-name filter
licenseStatus string active, inactive, suspended, revoked, expired
maxItems integer 10 Maximum records. 0 for unlimited

lastName narrows the search to one name prefix instead of enumerating A–Z, which is much cheaper when you are looking for a specific practitioner.


License Board Scraper Output Fields

{
  "profession": "chiropractor",
  "first_name": "Jane",
  "last_name": "Doe",
  "license_number": "0123456",
  "license_state": "NY",
  "license_status": "active",
  "license_issue_date": "2009-06-15",
  "license_expiration_date": "2027-05-31",
  "business_address": "500 Park Ave, Suite 3",
  "business_city": "New York",
  "business_state": "NY",
  "npi": "1234567890",
  "disciplinary_action": "",
  "source_state_board": "NYSED Office of the Professions",
  "source_url": "https://eservices.nysed.gov/professions/verification-search"
}
Field Type Description
profession string chiropractor, osteopath, or acupuncturist
first_name string First name
last_name string Last name
license_number string License number
license_state string Issuing state, two-letter code
license_status string active / inactive / suspended / revoked / expired
license_issue_date string Date of licensure
license_expiration_date string Registration / expiration date
business_address string Business address
business_city string Business city
business_state string Business state
npi string NPI, where cross-listed in NPPES
disciplinary_action string Disciplinary records, pipe-delimited — date|action|detail
source_state_board string Source state board identifier
source_url string Source URL used for this record

FAQ

Which states does the License Board Scraper cover?

New York only, today. The states input accepts FL and the default input includes it, but the Florida board is not yet implemented — passing it returns nothing for that state. New York is served by the NYSED ROSA API.

Is this a substitute for primary-source verification?

It reads the state boards directly, which is the primary source, and source_url records where each field came from. Whether that satisfies your credentialing policy is your call — boards update on their own schedule and a record is only as fresh as its last publication.

How does the search actually run?

Without lastName it enumerates name prefixes A–Z and paginates each. Supplying lastName collapses that to a single prefix, which is far fewer requests when you want one practitioner.

What is the format of disciplinary_action?

Pipe-delimited — date|action|detail — and empty for the large majority of practitioners. Split on | to parse.

Does every record have an NPI?

No. NPI is attached only when the practitioner is cross-listed in NPPES. An empty npi means no confident match was found, not that none exists.


Need More Features?

Need Florida, or another state board? Open an issue on the actor — that is what drives which board lands next.

Why Use License Board Scraper?

  • Disciplinary history included — The field provider directories usually drop, straight from the board that issued the action.
  • A schema built for multiple boards — Records are normalised to one shape, so additional state boards slot in without changing your pipeline.
  • Every record cites its sourcesource_state_board and source_url make any single claim checkable, which is what credentialing work actually requires.