Coding Intelligence API
In this tutorial, we will leverage the Coding Intelligence API’s for enforcing CMS Excludes1 rule and Admin Coding Sets rules.
What problem can you address with this API?
The Coding Intelligence API is designed to implement clinical decision support, provide insights, and support compliant reporting and enforcement of CMS Excludes1 rule. The API provides a solution for users who need to:
- Submit a list of codes for matches within the IMO Precision Administrative Coding Assistance Sets to determine if codes are designated as Non-Primary or Unspecified.
- Submit a list of codes for enforcing CMS Excludes1 rule.
How to call the API
To utilize the Precision Sets API, you'll need to first authenticate using an access token. Once authenticated, you can proceed to make requests to the API.
Authentication
Once you have your Client ID and Client Secret from IMO, follow these steps to construct the `Authorization` header.
Send a POST request to:
https://api.imohealth.com/oauth/tokenwith body:
{
"client_id":"CLIENT_ID",
"client_secret":"CLIENT_SECRET",
"audience":"https://api.imohealth.com",
"grant_type":"client_credentials"
}and header:
content-type: application/jsonThe response will give you the access_token. Use that to create the header:
Authorization: "Bearer ACCESS_TOKEN_HERE"Please contact IMO Customer Support at CustomerSupport@imo-online.com if you do not know your Client ID/Secret.
Making a request
Determine the API endpoint you'd like to call, and call it as such replacing the endpoint:
curl -X 'POST' \
'https://api.imohealth.com/codingintelligence/v1/rules/imo-admin-coding-sets' \
-H 'accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN_HERE' \
-H 'Content-Type: application/json' \
-d '{
"library_title": "IMO Precision Administrative Coding Assistance Sets",
"codes": [
{
"code": "Y07.11",
"code_system": "ICD-10-CM"
}
],
"value_set_ids": [
8054,
11248,
11247
]
}'Adminsets-codes-lookup - /codingintelligence/v1/rules/imo-admin-coding-sets
User submits a list of codes to be matched within value sets from the IMO Precision Administrative Coding Assistance Sets (ACS) Library; user can further specify (optionally) a category title and/or value set(s) within the library. The endpoint will return results to indicate if the code is designated as Non-Primary or Unspecified.
Recommendation: To minimize implementation changes and facilitate future expansion to additional use cases, it is recommended to populate optional fields (library_title, category_titles, value_set_ids) from the outset as a best practice.
| Parameter | Required? | Allowable Values | Error Handling |
| library_title | Optional. By default, the API assumes the library as ACS . Currently, no other library is supported. |
A user can specify the library title (i.e. "IMO Precision Administrative Coding Assistance Sets")
|
If a user specifies an invalid value, they will see a 400 error with a message to check library.
|
| category_titles | Optional. By default, the API assumes the category includes all categories within the ACS library to which the user has access. |
A user can specify category or categories title. (e.g. "Unspecified Codes", "Non Primary Diagnostic Codes")
|
If a user specifies an invalid value, they will see a 400 error with a message to check category. If a user specifies valid and invalid values, they will see a 400 error.
|
| value_set_ids |
Optional. By default, the API assumes the value sets include all value sets within the ACS library to which the user has access.
|
A user can specify value set(s) as value set ID (e.g. "10071", "8058") |
If a user specifies an invalid value (either as a single invalid value OR in combination with valid and invalid values), the user will see results for all provided codes.
|
| code_system | Required | A user must indicate code system associated to diagnosis code (i.e. "ICD-10-CM", "IMO_PROBLEM") |
|
| code | Required | This would be ICD-10-CM or IMO lexical codes (e.g. "B82.9", "64434300") |
|