What does a typical “create an estimate of out of pocket” response look like?

Care Cost Estimator API is an asynchronous API. You might get the response immediately (HTTP status code 200, 4xx, 5xx) or get the response later (HTTP status code 202).

  • HTTP status code 200 indicates that the Care Cost Estimator API returns the estimate result immediately. Please refer to the information below to see more details about the response.
  • HTTP status code 400 indicates the request cannot be completed due to missing data, invalid data, and so on. Please check the detail error message to modify the inputs in your request.
    HTTP status code 5xx usually occurs when Care Cost Estimator API may temporarily not be able to respond. Please try again later.
  • HTTP status code 202 indicates that the Care Cost Estimator API is still processing the request. Please use the estimate ID returned in the response and use GET request to get estimate details a few seconds later. You can find how to use GET request in What does a typical “get an existing out of pocket estimate” request and response look like?.

The response from the Care Cost Estimator API includes:

  • Id: this is your estimate ID and you can use to get the estimate details in the GET request.
  • ExpirationDate: when this estimate expires. By default, the estimate will expire in 24 hours.
  • CreatedDate: when this estimate is created.
  • InsuranceInfo: the payer, policy holder, and dependent information included in the request. The Care Cost Estimator API will also return the subscriber's insurance plan status, plan begin date, and end date if the Care Cost Estimator API gets such details from patient's benefit information.
  • Service codes: the service type code(s) included in the request.
  • ProviderInfo: provider NPI, organization name or provider first name and provider last name if provider is individual, the information you provided in the request.
  • BenefitInfo: the family benefit coverage and individual coverage based on the insurance information and serviceType code included in the request. If the benefit information does not include a specific benefit item like Out of Pocket Max, null value will be returned in the response. The Care Cost Estimate API uses the benefit information to calculate patient's out-of-pocket spending. When a benefit item is not returned, the Care Cost Estimate API will fall back to assume to generate an estimate. Those fallback assumptions include no copay requirement if copay is not returned, no coinsurance requirement if coinsurance percentage is returned, assume no deductible is met when deductible remaining is nor returned, assume no OOP Max is met when OOP Remaining is not returned.
  • OutofPocketEstimate: result and the estimate amounts and details.
  • FailureDetails: is result failed, you can find the failure details here. If the result is successful, null value is included in the response.
{
    "id": "ad1abd40-e5d4-4383-b1f7-973041d3ea1a",
    "expirationDate": "2022-03-04T02:56:59.1138466Z",
    "createdDate": "2022-02-25T08:56:58.6748920+00:00",
    "insuranceInfo": {
        "payer": {
            "id": "000045",
            "idDomain": "TradingPartnerService"
        },
        "dependentMemberInfo": {
            "firstName": "janeOne",
            "lastName": "doeOne",
            "dateOfBirth": "1880-01-02",
            "memberId": "0000000000"
        },
        "policyHolderInfo": {
            "firstName": "johnOne",
            "lastName": "doeOne",
            "dateOfBirth": "1880-01-02",
            "memberId": "0000000000"
        },
        "plan": {
            "status": "Active Coverage",
            "statusCode": "1",
            "beginDate": "2015-01-01",
            "endDate": null
        }
    },
    "service": {
        "codes": [
            {
                "valueType": "ServiceTypeCode",
                "value": "98"
            }
        ],
        "provider": {
            "id": "Z3248882383",
            "idType": "Npi",
            "organizationName": "St. Agnes Hospital",
            "firstName": null,
            "lastName": null
        }
    },
    "benefitInfo": {
        "familyCoverage": {
            "outOfPocketMax": {
                "amount": null,
                "amountMet": null,
                "amountRemaining": null
            },
            "deductible": {
                "amount": null,
                "amountMet": null,
                "amountRemaining": null
            },
            "yearToDateSpending": null
        },
        "individualCoverage": {
            "outOfPocketMax": {
                "amount": 5000,
                "amountMet": 2143.26,
                "amountRemaining": 2856.74
            },
            "deductible": {
                "amount": 500,
                "amountMet": 500,
                "amountRemaining": 0
            },
            "yearToDateSpending": null
        },
        "copayAmount": 50,
        "coinsurancePercent": 0.3
    },
    "outOfPocketEstimate": {
        "result": "Succeeded",
        "amount": 180.58,
        "estimateDetails": {
            "amountTowardIndividualDeductible": 0,
            "amountTowardFamilyDeductible": 0,
            "amountTowardIndividualOutOfPocketMax": 130.58,
            "amountTowardFamilyOutOfPocketMax": 0,
            "amountPaidByInsurance": 304.69,
            "copay": 50,
            "coinsurancePayment": 130.58,
            "coinsurancePercent": 0.3
        },
        "failureDetails": null
    }
}