Skip to content

Care Gaps API

About the application

With Vim Care Gaps, payer care gap data is easily and seamlessly connected to provider EHRs for improved gap closure performance at the point of care. For more information feel free to visit our website.

Get Gaps

This endpoint should return all open gaps for an eligible patient. These gaps will be presented to the user when in patient context, enabling them to take action and accept or dismiss the gaps. This endpoint receives a patient identifier (ID/token) as input, and returns a list of gaps.

Request Details

  • Method: GET
  • URL Pattern: https://<clientDomain>/api/getGaps/<patientToken>

Input Example

json
{
  "patientToken": "fieurhf943rh2kljrn9323hdsfbf342030"
}

Output Example

json
[
  {
    "gap_display_name": "Controlling High Blood Pressure",
    "gap_id": "122h3hbd009",
    "gap_code": "CBP",
    "last_recorded_dos": "2021-07-14",
    "last_recorded_provider_name": "Victor Test, M.D.",
    "notes": "Last billed 2021-07-14 by Victor Test, M.D",
    "cpt_code": "3074F",
    "cpt_description": "Most recent systolic blood pressure less than 130 mm Hg"
  }
]

Feedback

Unlike the previous endpoints, this endpoint is triggered by Vim in real-time whenever a gap is addressed by a user. Gaps can either be accepted or dismissed, depending on the user's decision. If a user accepts a gap - they would need to select cpy code/codes to writeback to the current encounter assessment section in the EHR. If a user dismisses a gap - they would need to provide a reason for their dismissal. Vim updates the customer about the action taken, so they can update the gap's status in the customer's system. If a gap is closed, we expect not to receive it the next time we invoke the getGaps query for the same patient.

Request Details

  • Method: POST
  • URL Pattern: https://<clientDomain>/api/gapsFeedback

Input Example (sent by Vim)

json
{
   "patientId": "1ba3d-d0973-119836-aaab2",
   "organizationName": "Test Medical",
   "vimOrganizationId": 1234,
   "userFirstName": "John",
   "userLastName": "Doe",                                    
   "userNpi": "1676809742",
   "ehrUsername": "J_doe",
   "gapId": "a570210c-7f07-41af-a223-9791263b82f1",
   "gapType": "Qx",
   "gapSystem": "HEDIS",
   "gapCode": "CBP",
   "gapDescription": "Controlling Blood Pressure",
   "selectedMedicalCodes": ["3074F"],
   "encounterDate": "2024-01-20",
   "actionType": "agree",
   "actionDate": "2024-02-07"
 }

Response

The response should have a successful HTTP code (2XX) when successful, otherwise it would be considered a failed request. The content of the response could be empty, or contain some information about the new gap status, if needed.

Authentication

In most implementations, Vim uses JWT or OAuth authentication. We can support other authentication methods, such as API key or username and user secret, if needed. Vim is able to adapt the authentication method used to the customer's needs and abilities. Vim will include the obtained access token in the Authorization header for subsequent requests.

Token Request

  • Method: POST
  • URL Patten: https://<clientDomain>/api/token

Input Example (sent by Vim)

json
{
  "client_id": "your_client_id",
  "secret": "your_secret",
  "ehr_username": "user_ehr_username",
  "vim_organization_id": "user_vim_organization_id"
}

Response

json
{
  "access_token": "your_access_token",
  "token_type": "Bearer",
  "expires_in": 3600
}

Customizations

This document describes all the fields Vim has available when initiating the API call. You may receive these fields or any subset of them. Vim can adjust the payload to adapt to the customer’s needs, including authorization or any other needed header.