Medicare coverage support
Whether Medicare's local coverage documents list a diagnosis as supporting a procedure code, per state, with how each answer was reached and the CMS page to check.
| Source | CMS Medicare Coverage Database: LCDs, billing and coding articles and NCDs |
| Source id | cms-mcd |
| Release cadence | CMS rebuilds the exports weekly; we check daily and publish a new version when a coverage fact changes |
| License | Public domain (CMS); CPT descriptors excluded |
| Plans | Pro and Team (403 plan-upgrade-required on Free and Builder) |
| Endpoints | /v1/coverage/medicare?code=&dx=&state=, /v1/coverage/changes |
Medicare Administrative Contractors publish Local Coverage Determinations (LCDs) and billing and coding articles. Many articles list the ICD-10-CM codes that support medical necessity for the procedure codes they cover, and some list codes that don't. This endpoint reads those lists for one procedure code, one diagnosis and, optionally, one state:
curl "https://api.healthcare.dev/v1/coverage/medicare?code=11720&dx=B35.1&state=TX" \
-H "Authorization: Bearer $HDEV_API_KEY"{
"data": {
"code": "11720",
"dx": "B35.1",
"state": "TX",
"disclaimer": "Reference data, not a coverage determination.",
"coverage": {
"answer": "supported",
"confidence": 1,
"derivation": "source_stated",
"evidence": [
{
"url": "https://www.cms.gov/medicare-coverage-database/view/article.aspx?articleid=56640&ver=16",
"anchor": "h3Icd10SupportHeader"
}
],
"as_of": "2026-10-19T06:55:00.000Z"
},
"basis": "documents_agree",
"results": [
{
"document": {
"id": "A56640",
"type": "article",
"version": 16,
"title": "Billing and Coding: Debridement of Mycotic Nails",
"...": "..."
},
"states": ["TX"],
"state_regions": [],
"coverage": {
"answer": "supported",
"confidence": 1,
"derivation": "source_stated",
"...": "..."
},
"basis": "dx_listed_as_supporting",
"context": false
}
]
}
}results has one entry per LCD or article that lists the code (in state, when you send one);
coverage at the top combines them: their answer when they agree, otherwise unclear. An LCD
whose criteria are narrative, when its own billing article answers for the code, is listed with
context: true: it is evidence to read, not a separate answer, so it doesn't make the overall
answer unclear. Documents that answer come first, then context ones; within each group the
order carries no meaning. ?view=compact returns only the overall answer; view=full (the default)
adds results. No
document listing the code means there is no local policy for it: unclear, with empty results.
National Coverage Determinations (NCDs) don't list codes; articles that implement one name it in
related_ncds.
The three answers
answer | Means |
|---|---|
supported | The document lists the diagnosis among the codes that support medical necessity for this procedure code. |
not_supported | The document lists the diagnosis among the codes that don't, or says that diagnoses it doesn't list don't support the code and this one isn't listed. |
unclear | The document doesn't settle it for this pair: its criteria are narrative only, the diagnosis comes with extra conditions, or its lists aren't tied to this code. |
basis names which of these it was, in terms of the document: dx_listed_as_supporting,
dx_listed_as_not_supporting, dx_not_listed, conditional (listed, but marked as needing
something more, such as a second diagnosis), conflicting_lists, pairing_not_stated (the
article has several code groups and doesn't say which list goes with this code) or no_dx_list.
How each answer was reached: derivation
Every answer carries the same five fields (the same as every derived answer; see Derived answers):
derivationsays how the answer was reached.source_stated: the document states it in its published code lists, and we only read the list.derived: we concluded it from what the document says, without the document stating it outright.reviewed: a person checked it. Here,supportedandnot_supportedare alwayssource_stated;unclearisderived, because "the document doesn't settle this" is our reading, not something CMS writes.confidenceis from 0 to 1:1for answers the document states,0forunclear. Don't act on an answer below your own threshold without checking the evidence.evidencelinks the document's page in the Medicare Coverage Database, with the section (anchor) to read: the supporting or non-supporting ICD-10 list, the code list, or the coverage indications.as_ofis when CMS published the export the answer was read from.answeris one of the three above.
We serve facts and links, never the policy text: read the linked page for the criteria themselves.
What it is not
- Not a coverage determination. Every response says so. A listed diagnosis doesn't guarantee payment: the service must still be reasonable and necessary and meet the LCD's criteria, and the medical record must support it.
- Not prior authorization, Medicare Advantage plan criteria or a payment amount (see Medicare Part B ASP for drug payment limits).
- CPT codes appear as code numbers only, never with their descriptors (copyrighted by the AMA). Dental (CDT) codes are left out.
- Send the full billable ICD-10-CM code (
E11.9, with or without the dot): a category such asE11matches only if a document lists it. - Not a bulk download. Each account can look up a limited number of different code and diagnosis pairs a day (5,000 on Pro, 20,000 on Team), all its keys together; repeats don't count. See daily lookup limits.
When a coverage document changes in a way that can change an answer, it appears in the coverage change feed.