California Medical Facilities & Enforcement Actions avatar

California Medical Facilities & Enforcement Actions

Pricing

$0.10 / 1,000 ca medical facility records

Go to Apify Store
California Medical Facilities & Enforcement Actions

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

Wenhao Yang

Maintained by Community

Actor 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:

CorpusRecordsWhat it is
facilities10,914The 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.
enforcement20,550CDPH 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.
certified15,097Licensed-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

InputWhat it does
corpusfacilities (default) / enforcement / certified
moderows (default) / aggregate
licenseCategory / status / bedsMin / emergencyServicesOnlynarrow the facility register
penaltyType / disposition / facilityType / facility / classAssessed / amountMin/Max / deathRelated / appealed / issuedFrom/Tonarrow the enforcement actions
licensedCertified / licenseStatus / deemedOnly / traumaCenter / criticalAccess / birthFacility / ccn / npinarrow the certified locations
county / city / keywordsshared location / name filters
groupByaggregate over a dimension of the selected corpus
maxResultscap 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

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.