Feed · annual Part D release · $0.05 per 1,000-row page
Pharma Prescribing
The buying moment for a pharma field team is a prescriber newly entering a therapeutic drug class — the new GLP-1 writer this Part D year, the physician who started an SGLT2 they never wrote before. This feed is exactly that list, straight from Medicare Part D: one flat row per prescriber who entered a class in PY2024, with specialty, state, city, and the year-over-year class-claim delta. Flip direction to surface de-adopters for win-back. Filterable by drug_class, specialty, and state.
The base: CMS Medicare Part D Prescribers by Provider and Drug, aggregated per NPI to a drug class and differenced PY2023 → PY2024 — public federal open data, not a scraped panel. Sourced cross-gateway from the Healthparse Part D API; every row carries its Part D release as_published_date (point-in-time discipline, no restatements).
Provenance
How this dataset is built
This is the actual CMS Part D prescribing file — public federal claims data, not a modeled or purchased prescriber panel:
- CMS — Medicare Part D Prescribers by Provider and Drugrefreshed annual (CMS Part D release; year-pair fixed PY2023 → PY2024)
Per-NPI-per-drug Part D prescribing as published by CMS: total claims, 30-day fills, drug cost, and beneficiaries per prescriber and drug, joined to prescriber specialty, state, and city. Public-domain federal open data (HHS/CMS).
https://data.cms.gov/provider-summary-by-type-of-service/medicare-part-d-prescribers-by-provider-and-drug
Class mapping. Per-NPI-per-drug rows are mapped to a therapeutic drug class (GLP-1, SGLT2, DPP-4, Statin) and summed per prescriber, so a class total captures a molecule switch within the class, not just one brand.
Year-over-year difference. Class totals are differenced PY2023 → PY2024. direction=new_entrant returns prescribers who wrote the class in PY2024 with at most max_prior_claims in PY2023 (0 = truly new to the class); direction=de_adopter returns those whose class volume fell by at least min_pct_drop percent.
Attestation. Every API response carries a signed _meta attestation naming the CMS Part D source, source URL, and Part D release vintage, and each row carries the prescriber NPI — the identifier of the official record.
Honest limits. Part D is an annual federal release and covers Medicare Part D claims only — not cash, commercial, or Part B — and the year-pair is fixed 2023 → 2024. This is a strategic adoption stream, not an intraday signal, and it is observational: a prescriber appears with a claim volume, never a clinical recommendation.
Who buys this
Documented use cases
01Pharma field team lead (GLP-1 launch)
- Asks
- “Which physicians started writing our drug class this Part D year, so my reps call the newest adopters first?”
- The feed returns
- Every new_entrant prescriber for the class — specialty, state, city, and PY2024 class-claim volume against a zero (or low) prior year — cursor-paginated for a full territory.
- Action
- Route the new-to-class list to reps by state and specialty; prioritize the highest PY2024 volume as the warmest new adopters.
02Commercial operations / analytics
- Asks
- “How is class adoption shifting year over year, and which specialties are the early movers?”
- The feed returns
- class_claims_2024 vs class_claims_2023 and the delta per NPI, sliced by drug_class and specialty — the raw adoption curve, not a modeled estimate.
- Action
- Build territory-level adoption dashboards and spot off-specialty early adopters (e.g. a GLP-1 written by a cardiologist) worth a targeted play.
03Market-access / win-back
- Asks
- “Which prescribers are backing away from the class so I can re-engage before a competitor does?”
- The feed returns
- direction=de_adopter rows: prescribers whose class volume fell year over year, filterable by min_pct_drop, specialty, and state.
- Action
- Feed de-adopters to a win-back sequence, deduped on the stable event_key so a republished row never fires twice.
Set these up as live Parses — recipes and delivery mechanics →
Schema
Fields & sample rows
| Field | Type | Description |
|---|---|---|
| event_key | text | Stable key: partd:<npi>:<drug_class>. Deduplication and cursor key. |
| npi | text | Prescriber National Provider Identifier. |
| drug_class | text | Therapeutic drug class: GLP-1 | SGLT2 | DPP-4 | Statin. |
| direction | text | new_entrant (entered the class in PY2024) | de_adopter (class volume fell year over year). |
| prescriber_specialty | text | Prescriber specialty (Prscrbr_Type), e.g. Endocrinology — where the off-specialty / early-adopter signal lives. |
| prescriber_state / prescriber_city | text | Prescriber practice location. |
| class_claims_2024 / class_claims_2023 | integer | Total class claims in PY2024 and PY2023. A new-to-class prescriber shows PY2024 volume against ≤ max_prior_claims in PY2023. |
| class_claims_delta | integer | PY2024 minus PY2023 class claims — the year-over-year move. |
| pct_change | numeric | Percent change in class volume PY2023 → PY2024 (null when the prior year is zero, i.e. a true new entrant). |
| performance_year_pair | text | Fixed 2023-2024 — Part D publishes annually, so the delta is a year-pair difference. |
| as_published_date | text | The Part D release the row was published in (e.g. PY2024). Rows are never restated; corrections arrive as new annual releases (point-in-time discipline). |
Curated subset — the full data dictionary ships with the feed and in every Snowflake / Datarade listing.
| specialty | state | drug_class | direction | class_claims_2024 | class_claims_2023 |
|---|---|---|---|---|---|
| Endocrinology | TX | GLP-1 | new_entrant | 1,787 | 0 |
| Nurse Practitioner | TX | GLP-1 | new_entrant | 1,332 | 0 |
| Internal Medicine | FL | SGLT2 | new_entrant | 640 | 0 |
| Family Practice | CA | GLP-1 | new_entrant | 512 | 0 |
| Cardiology | NY | SGLT2 | new_entrant | 388 | 0 |
Real new-to-class rows from GET /v1/feeds/pharma-prescribing?drug_class=GLP-1&direction=new_entrant (public CMS Part D records; columns abridged). Every row also carries the prescriber NPI, city, class_claims_delta, and pct_change.
Pricing & access
Three ways to buy
Self-serve API
$0.05 / page
up to 1,000 rows per page-call — live today
- Full feed, every filter, opaque keyset cursor
- Pay per use: x402 (USDC, no account) or a metered API key
- Signed _meta attestation and source vintages on every response
- No seat licenses, no minimums, no sales call
Enterprise
$10,000 / yr
flat annual license
- Bulk daily or weekly drops (CSV / Parquet) to your bucket
- Webhook alerts on new rows matching your saved filters
- Private Snowflake share of the same tables
- Email support and a named contact
Institutional
Private offer
the tier comparable products price at $40–85k/yr
- Everything in Enterprise
- Ticker/CIK-mapped rows — identifier-verified against the SEC registrant universe, match basis disclosed
- Point-in-time discipline: event_date + as_published_date on every row, no restatements, vintage history retained
- Delivery SLA, methodology documentation, and diligence support for your data-sourcing review
- $0.05 per page-call — each call returns up to 1,000 flat rows. Drain any window with repeated cursor calls; the opaque keyset cursor never skips or double-counts a row.
- Pay-per-use, two ways: x402 (USDC, no account needed — pay per request) or a metered API key with monthly billing.
- Warehouse-native delivery: the same feeds are listed on Datarade and coming to Snowflake Marketplace (listings submitted, in review) — enterprise buyers get a private Snowflake share today — plus CSV export for flat-file workflows.
- Full machine-readable endpoint definitions (parameters, output shape, prices) live in the catalog at api.govparse.io/v1/catalog; dataset license terms at api.govparse.io/v1/license/partd.
curl "https://api.govparse.io/v1/feeds/pharma-prescribing?drug_class=GLP-1&direction=new_entrant&state=TX&max_prior_claims=0&limit=500" \
-H "x-api-key: gp_live_..."GET https://api.govparse.io/v1/feeds/pharma-prescribing
A note on framing
Rows report Medicare Part D prescribing exactly as published by CMS — claim counts and a year-over-year delta, reproduced observationally. A prescriber appearing in the class is a record of claims filed, never a clinical judgment, an endorsement, or a recommendation about any prescriber or therapy. Part D covers Medicare claims only, so it under-observes cash and commercial volume. Build your models accordingly — we ship the record, you draw the conclusions.
Start pulling pages today.
No sales call. First page is one x402 payment away, or grab a metered key.