California Medical Facilities & Enforcement Actions
Pricing
$0.10 / 1,000 ca medical facility records
California Medical Facilities & Enforcement Actions
California medical facilities (public open data): the licensed-facility register (~10.9k hospitals/SNF/home-health/hospice/clinics) with category, status, beds and ER level; CDPH enforcement actions (~20.5k) with penalty class and appeals; and licensed/certified locations with CCN/NPI.
Pricing
$0.10 / 1,000 ca medical facility records
Rating
0.0
(0)
Developer
Wenhao Yang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
California publishes its licensed medical-facility register, the state enforcement actions taken against those facilities, and the licensed-and-certified facility locations as open data. This actor turns all three into a charged-per-record lookup, filter and aggregate tool: pull the hospitals, skilled-nursing homes, home-health agencies, hospices and clinics in the state, read the penalty history behind a facility, or check a location's CCN/NPI and hospital designations.
Built for: hospital / SNF / clinic compliance and diligence teams, medical-facility suppliers and staffing firms building a target list, and enforcement / complaint researchers - anyone who needs the state-level facility record, not just the federal CMS layer.
What it covers
Three corpora, one clean schema:
| Corpus | Records | What it is |
|---|---|---|
| facilities | 10,914 | The licensed-facility register: one row per licensed facility, with licensing category, level (parent / branch / consolidated), open-closed status + date, emergency-service level, bed count, address + county + coordinates. |
| enforcement | 20,550 | CDPH state enforcement actions, 1997-present: one row per penalty - Citation / Administrative Penalty / Failure-to-Report, the assessed class, initial vs final amount, collected and balance due, the violation window, disposition, whether it was appealed, and whether the violation was death-related. |
| certified | 15,097 | Licensed-and-certified locations - the Medicare/Medicaid side: CCN, NPI, deemed status, participation and approval dates, facility administrator, contact phone/email, capacity, license status and dates, plus hospital designations (trauma center, critical-access, birthing facility). |
The facility register spans the whole licensed spectrum - General Acute Care Hospitals, Skilled Nursing Facilities, Home Health Agencies, Hospices, Community and Free Clinics, Chronic Dialysis Clinics, Acute Psychiatric Hospitals, Congregate Living Health Facilities and more - each with its status, county and bed license.
The enforcement corpus is the part the federal-only sources don't carry: 20,550 state penalties, each with the assessed class (AA / A / B), the amount assessed vs the amount due after appeal, the appeal trail (was it appealed, appeal-due and appeal-received dates) and a death-related flag.
Each record carries location (address, city, county, ZIP, latitude/longitude), identity keys (OSHPD id, license number, CCN, NPI, facility id) and dates. The three corpora come from three different state systems and do not share one common key - the registered facilities and the certified certified file overlap only partially, and the enforcement facID matches the certified FACID only after the source's zero-padding is normalized. Treat each corpus as its own register; join them on a specific id (CCN / NPI / license number) where the two systems both carry it, and expect partial matches.
Typical questions
- "Every General Acute Care Hospital in Los Angeles County with its bed count."
- "Which facilities have penalties over $100,000 - and which were appealed?"
- "The death-related citations at skilled-nursing facilities in 2024."
- "Every critical-access hospital or trauma center in the state."
- "Look up a facility by CCN or NPI for its Medicare participation and capacity."
- "Aggregate the register by category or county; aggregate the penalties by type, disposition or state fiscal year."
Inputs
| Input | What it does |
|---|---|
corpus | facilities (default) / enforcement / certified |
mode | rows (default) / aggregate |
licenseCategory / status / bedsMin / emergencyServicesOnly | narrow the facility register |
penaltyType / disposition / facilityType / facility / classAssessed / amountMin/Max / deathRelated / appealed / issuedFrom/To | narrow the enforcement actions |
licensedCertified / licenseStatus / deemedOnly / traumaCenter / criticalAccess / birthFacility / ccn / npi | narrow the certified locations |
county / city / keywords | shared location / name filters |
groupBy | aggregate over a dimension of the selected corpus |
maxResults | cap records (default 200; 0 = the whole result set, paged) |
Default run = the first 200 facilities - fast for the daily auto-test. For a targeted query add a filter; for a broad view use aggregate (a handful of summary rows, not a row dump).
Low cost
From $0.0001 per record - billed only for the rows you use, at the platform floor. Cost scales with what you pull, not with the size of the register, and because each record is metered individually there's no per-run charge cap to hit on a big pull.
California's medical-facility data is published as three files that do not agree with each other, and the traps are all in the joins and the typed columns. The bed count only exists on bed-bearing facility types - hospitals, skilled-nursing, psychiatric and congregate-living carry it, while the home-health agencies, hospices and clinics that make up most of the register carry none by design, so a naive "beds > 0" filter silently drops two-thirds of the state. That bed column is text with thousands separators ("1,106"), so even the numeric range has to be unwound before it can be compared. The enforcement amounts are text holding decimals and negative offsets, and the citation class only lives in the initial column - the final column is a post-appeal outcome that is empty on four rows in five and, on the rows that carry it, is a free-form result ("UPHELD", "Dismissed by Court", "B Trebled") mixed with stray tab characters, exactly the field a thin scraper grabs and reports wrong. The trauma designation is a bare "LEVEL I"-"LEVEL IV" with blank meaning "not a trauma center", and critical-access is a single Y, not the YES a template would assume. Normalizing three update rhythms, five vocabularies and two broken number columns into one schema where an amountMin / bedsMin / traumaCenter query returns exactly the facilities you mean is the actual product. Every pull is integrity-checked against each feed's known shape, so a degraded source fails loudly instead of returning bad rows.
Source
- HCAI: Licensed Healthcare Facility Listing - the licensed-facility register (semi-annual snapshot).
- CDPH: Health Facilities State Enforcement Actions - the state penalty history.
- CDPH: Licensed and Certified Healthcare Facility Listing - the licensed-and-certified locations.
Public open data. Records are the state's own published fields; this is not an endorsement of any facility, and the register reflects the state's snapshot as of each pull.