Accordion APIs How-To series, part III
Closing the gaps between the documented risk conditions and what members really have
In the last post, we discussed how you can use our Risk Profiler API /api/current-hcc
to estimate risk scores and identify existing Hierarchical Condition Categories (HCCs) of your members. Today we will move on to the predictive side of our Risk Profiler API /api/suspect-hcc
, which is powered by Accordion Risk Surface Engine (Arise), to answer the following question:
How accurately do documented risk conditions reflect true risk conditions? In other words, given a member’s diagnoses, medications and procedures, would the member have additional risk conditions?
The answer to this question would be the key to understand the true risk of your population. As you may have figured out, to get this answer, you need predictive analytics.
Extension to Risk Profiler basic requirements
To better handle diagnosisCodes
in the requests send to /api/suspect-hcc
, we will convert each diagnosis code into the International Classification of Diseases (ICD) version specified in ICDVersion
(the default is 10
). The purpose of doing so is to take the burden of conversion between ICD-9 and ICD-10 away from you, while preserving our Risk Profiler’s capability to identify existing and missing diagnoses.
Keep in mind that:
- You still have the option to choose which ICD version you would like to use in your requests
- You can provide diagnosis codes from either ICD-9 or ICD-10, regardless of which version you select.
However, we recommend that you use ICD-10, since the transition to ICD-10 is a mandate after Oct. 1, 2015 (reference). In the following examples, we assume that the member had been diagnosed once with "9-29630"
and once with "10-I739"
, and we will use ICD-10 for the conversion.
{
"gender": "female",
"age": 77,
"riskModel": "cms_hcc22",
"ICDVersion": "10",
"diagnosisCodes": [
{
"code": "9-29630",
"count": 1
},
{
"code": "10-I739",
"count": 1
}
]
}
Suspect Hierarchical Condition Categories and Details
Now let’s assume that in addition to the diagnoses, this member was also taking breo ellipta (National Drug Code (NDC) is 00173085910
, beta2-adrenergic agonist). After adding this code to the request body, let’s send a POST /api/suspect-hcc
to see if we can find any missing HCCs.
POST /api/suspect-hcc HTTP/1.1
Host: developers.accordionhealth.com
Content-Type: application/json
Authorization: Bearer JSON.WEB.TOKEN{
"gender": "female",
"age": 77,
"riskModel": "cms_hcc22",
"ICDVersion": "10",
"diagnosisCodes": [
{
"code": "9-29630",
"count": 1
},
{
"code": "10-I739",
"count": 1
}
],
"ndcCodes": ["00173085910"]
}
Here is the response.
HTTP/1.1 200 OK
Content-Type: application/json{
"suspectHCC": [
"[CC111] Chronic Obstructive Pulmonary Disease"
],
"numHCC": 1,
"details": [
{
"cc": "[CC111] Chronic Obstructive Pulmonary Disease",
"potentialDXs": [
{
"dx": "10-J449",
"dxDesc": "Chronic obstructive pulmonary disease, unspecified",
"drisk": 0.346,
"likelihood": 0.433,
"evidence": [
{
"varname": "[Rx] beta2-Adrenergic Agonist",
"relevance":3.162
},
{
"varname": "[CC] 108: Vascular Disease",
"relevance": 1.033
}
]
} // closing bracket of the first potential diagnosis code
] // closing bracket of "potentialDXs"
}
] // closing bracket of "details"
}
In this response, you receive rich information about each suspect HCC suggested by Arise. Below are the explanations.
suspectHCC
shows all of the suspect HCCs suggested by Arise.- All potential diagnosis codes that could lead to each HCC are provided in
details
. dx
anddxDesc
show the diagnosis code and its description. In this example, it means that10-J449
“Chronic obstructive pulmonary disease, unspecified” is the one (and only, given the information provided in the request body) that can lead to CC 111 - Chronic Obstructive Pulmonary Disease (COPD).drisk
indicates the risk score increase if such diagnosis code were documented in the member’s medical record.likelihood
indicates how likely such diagnosis code can be found.evidence
describes the reasons why Arise made such suggestion. The first evidence provided here is[Rx] beta2-Adrenergic Agonist
with a relevance score of3.162
, indicating that the probability of having10-J449
is3.162
times higher for the people who take beta2 - adrenergic agonist than those who don’t (see more about lift here). This evidence makes perfect sense since beta2 - adrenergic agonist is primarily used to treat pulmonary diseases like COPD (reference).
How about Medical Procedures?
Above we learned how to include members’ medication information to help us find the missing HCCs. You might want to ask: How about medical procedures? Can we infer missing diagnoses from medical procedures? In order to answer these questions, let’s assume that the member also took two glycosylated hemoglobin tests, with HCPCS/CPT code 83036
.
POST /api/suspect-hcc HTTP/1.1
Host: developers.accordionhealth.com
Content-Type: application/json
Authorization: Bearer JSON.WEB.TOKEN{
"gender": "female",
"age": 77,
"riskModel": "cms_hcc22",
"ICDVersion": "10",
"diagnosisCodes": [
{
"code": "9-29630",
"count": 1
},
{
"code": "10-I739",
"count": 1
}
],
"ndcCodes": ["00173085910"],
"procedureCodes": [
{
"code": "83036",
"count": 2
}
]
}
With the procedure included, the new response will look as the following.
HTTP/1.1 200 OK
Content-Type: application/json{
"suspectHCC": [
"[CC19] Diabetes without Complication",
"[CC111] Chronic Obstructive Pulmonary Disease"
],
"numHCC": 2,
"details": [
{
"cc": "[CC19] Diabetes without Complication",
"potentialDXs": [
{
"dx": "10-E119",
"dxDesc": "Type 2 diabetes mellitus without complications",
"drisk": 0.118,
"likelihood": 0.486,
"evidence": [
{
"varname": "[Pr] 83036: Glycosylated hemoglobin test",
"relevance": 4.765
}
]
}
]
},
{
"cc": "[CC111] Chronic Obstructive Pulmonary Disease"},
...this part remains unchanged...
}
]
}
As can be seen above, Arise provided a new suspect CC 19 - Diabetes without Complication based on the evidence including the glycosylated hemoglobin test.
What’s next?
Today, we introduced a new member of our Risk Profiler APIs, which is called /api/suspect-hcc
. Powered by our proprietary machine learning engine Arise, this API helps you identify the missing/hidden diagnosis codes that were not properly documented, thereby saving you more time and resources to provide better care to your population.
In the next few posts, we will prepare some case studies to give you better insights into our Risk Profiler APIs and Arise.
Thoughts and comments are welcome! Also, please don’t hesitate to contact us at info@accordionhealth.com or visit our API documentation at developers.accordionhealth.com.