Data products

Signals

Every other Healthparse product tells you who a provider is. Signals tells you what just changed: a new physician enumerated in your territory, an NPI deactivated, a hospital that changed owners, a cost report showing an equipment-spend jump. We archive successive releases of federal provider rosters and diff them, so each event is a dated, sourced record that a specific fact changed between two published file versions.

Two products, one events backbone: the Provider Change Events feed and the Hospital Capex Signals slice. Pull them by API, or have new events pushed to you as they land.

Built for teams that act on change: device and pharma commercial ops (new-provider-in-territory alerts), credentialing and compliance (deactivation and ownership-change monitoring), and PE / corp-dev (roll-up velocity, capital-spend signals).

Provider Change Events

85,427 events across 11 event types, keyed by NPI and CCN, unified from 7 federal file families (CMS NPPES, Order & Referring, pending enrollment, CLIA, CHOW/All-Owners, HCRIS, and FDA MQSA). Refresh runs twice-weekly (Tue/Fri), weekly (Wed), and quarterly by source. Ownership-change events carry the historical change dates CMS publishes (back to 2005); the diff-derived types begin at the July 2026 baseline.

One honest note, stated plainly rather than buried: 5 of the 11 types have rows today. The other six come from snapshot-only sources whose diff baseline was first established on 2026-07-22 — an event can only exist once two successive file versions have been compared, so those types start emitting on the refresh runs that follow the baseline. The table below marks each type either way.

Event typeWhat it meansSourceCadenceRows today
new_enumerationAn NPI newly appeared in the NPPES registry — a brand-new provider or organization.CMS NPPES weekly V2Weekly34,696
address_changeAn active NPI's practice address changed; old and new address both included.CMS NPPES weekly V2Weekly19,696
deactivationAn NPI was deactivated (retirement, death, merger, revocation — NPPES does not publish the reason).CMS NPPES weekly V2Weekly16,260
ownership_changeA Medicare-certified facility changed owners (CHOW). Buyer and seller CCN/NPI/org in the payload.CMS CHOW + All-OwnersQuarterly10,179
capex_jumpA hospital's cost report shows movable-equipment purchases ≥ $1M and ≥ 2× the prior fiscal year.CMS HCRIS Worksheet A-7Quarterly4,596
newly_billingAn NPI newly appeared in the Order & Referring file — it can now order/refer for Part B, DME, HHA, PMD, or hospice.CMS Order & ReferringTwice-weekly (Tue/Fri)0 — emits post-baseline
enrollment_pendingAn NPI appeared on CMS's pending-enrollment list — a Medicare enrollment application is in process.CMS PILT filesWeekly0 — emits post-baseline
new_lab_certificateA new CLIA laboratory certificate appeared in the Provider of Services file.CMS POS CLIAQuarterly0 — emits post-baseline
lab_cert_upgradeAn existing lab's CLIA certificate type moved up-rank (e.g. waiver → accreditation).CMS POS CLIAQuarterly0 — emits post-baseline
new_mammo_facilityA facility newly appeared on the FDA's certified mammography facility list.FDA MQSAWeekly0 — emits post-baseline
mammo_decertA facility disappeared from the FDA's certified mammography list (decertified or closed).FDA MQSAWeekly0 — emits post-baseline

“0 — emits post-baseline” means the type is live in the schema and the pipeline, and begins producing events on the ingests following the 2026-07-22 snapshot baseline (Tue/Fri and Wed runs for the fast sources, quarterly for CLIA). We would rather tell you that here than have you find out from a query.

Hospital Capex Signals

The premium slice of the events feed: 4,596 capex-jump signals distilled from 2.05 million HCRIS Worksheet A-7 line items — every hospital whose cost report shows major movable-equipment purchases of at least $1M and at least 2× the prior fiscal year, with the full purchase breakdown by asset class (land, buildings, fixed equipment, movable equipment, health IT), the prior-year comparison, and the year-over-year multiple. In FY2025 alone, 519 hospitals triggered the jump rule; California, Texas, and Pennsylvania lead. Quarterly refresh on the HCRIS release cycle.

The framing is deliberately observational: the hospital reported a step-up in equipment purchases on its own cost report. Who they bought from, and why, is not in the data — and we don't pretend otherwise.

The API

Both products are live on the Agent Gateway at $0.10 per call — metered API keys (get one at healthparse.io/developers) or x402 pay-per-call with no account. Filter by event type, state, date, NPI, or CCN; page with a keyset cursor that stays stable while new events land.

# Provider change events: new NPIs + address changes in Texas since July 1
curl -H "x-api-key: YOUR_KEY" \
  "https://api.healthparse.io/v1/providers/events?type=new_enumeration,address_change&state=TX&since=2026-07-01"

# Hospital capex signals: $5M+ movable-equipment years in California
curl -H "x-api-key: YOUR_KEY" \
  "https://api.healthparse.io/v1/hospitals/capex-signals?state=CA&min_amount=5000000"

Webhooks: get pushed, not polled

Subscriptions turn the feed into a trigger. Pick the event types and states you care about — every new NPI in your sales territory, every deactivation touching your credentialed roster, every capex jump in your region — and we POST matching events to your endpoint at the end of every refresh run, in order, batched.

  • Signed: every delivery carries X-Healthparse-Signature: sha256=<hex> — an HMAC-SHA256 of the raw request body with your subscription secret — plus a per-delivery id and event count.
  • At-least-once: each subscription keeps a strict delivery cursor that only advances after your endpoint returns 2xx. A failed or timed-out delivery is retried with the same events on the next run; dedupe on event_id or dedupe_key.
  • Ordered: events arrive in ascending event_id order, so your side can treat the stream as an append-only log.

A delivery looks like this:

POST https://example.com/hooks/healthparse
Content-Type: application/json
User-Agent: healthparse-webhooks/1.0
X-Healthparse-Signature: sha256=2f1e0c6a9d4b8e3f5a7c1d9b0e6f4a2c8d3b5e7f1a9c0d2b4e6f8a1c3d5e7f9b
X-Healthparse-Delivery: 3b241101-e2bb-4255-8caf-4136c566a962
X-Healthparse-Event-Count: 2

{
  "subscription_id": "9f8b7a6c-5d4e-4321-b0a9-8c7d6e5f4a3b",
  "delivered_at": "2026-07-24T12:00:00.000Z",
  "event_count": 2,
  "events": [
    {
      "event_id": 84210,
      "event_date": "2026-07-12",
      "event_type": "new_enumeration",
      "npi": "1999999999",
      "ccn": null,
      "entity_name": "EXAMPLE CLINIC LLC",
      "city": "AUSTIN",
      "state": "TX",
      "details": { "entity_type": "organization" },
      "source": "nppes_weekly_v2",
      "source_vintage": "2026-07-12",
      "dedupe_key": "new_enumeration|1999999999|2026-07-12"
    },
    { "...": "next event, ascending event_id" }
  ]
}

# Verify: HMAC-SHA256(raw body, your secret) must equal the signature hex.
node -e 'const {createHmac}=require("crypto");
  console.log("sha256="+createHmac("sha256",SECRET).update(RAW_BODY).digest("hex"))'

Webhook subscriptions are part of the enterprise tier and are set up with you, not self-serve — write to hello@healthparse.io with the event types, states, and endpoint you want.

Prefer your warehouse?

Both datasets are coming to Snowflake Marketplace as full-table listings with free-trial samples — joining the seven Healthparse datasets already live there (cost-report financials, negotiated rates, exclusions, Medicare utilization, nonprofit finances, wage benchmarks, facility quality). If you want early access to the Snowflake shares, email hello@healthparse.io.

What this data is — and isn't

Every event is an observational record derived from files published by CMS and the FDA: a dated statement that a specific fact changed between two published file versions, shown as filed, never an inference about why. Sources can lag, correct, and republish — verify against the primary source before acting on any individual record.

Healthparse is not a consumer reporting agency and this data is not a consumer report. Do not use it for FCRA-regulated purposes — decisions about an individual's employment, credit, insurance eligibility, or similar. For exclusion screening workflows, see ProviderScore, which carries the same framing.

Full input schemas, output examples, and per-dataset license terms are in the JSON catalog and at /v1/license. Row counts on this page were verified against the live tables on 2026-07-23.