Skip to content
IntelliProve
You're viewing a deprecated version of this documentation. Go to the latest version

Results API

This is the API documentation for the IntelliProve results API, which allows you to request results for past health checks based on the health check UUID.

If you are new to this developer portal, we recommend first reading the Plug-in: overview, a five-minute read which will get you acquainted with how our plug-in works and how it can be integrated into your platform. To integrate the plug-in into your platform, follow our Plug-in documentation.

Keep in mind that this API is mainly geared towards backend functionality such as requesting results of past health checks, getting history for specific users, deleting data, etc. The actual health check is performed using our web plug-in.

As a customer, you will receive information about the environment (API base URL) to use for development and production.

All the endpoints described below require an API key or a bearer token in the header for authentication purposes.

We provide the results in two different formats: simple ‘results’ and ‘buckets’.

The simple results of a health check contain the values for each biomarker, without further context. The buckets contain more context, such as the optimum, max and minimum for each biomarker.


Use the below endpoint to request the results of a previously performed health check. Note that we recommend listening to events, as described in Plug-in: events, in case you want to obtain the results right after the user completes the measurement.


Whereas the above endpoint returns immediately if no results are available (yet), some use cases might require the use of long polling to wait while your video is still processing.

Wait for results

GEThttps://engine.intelliprove.com/v1/results/wait/{uuid}

This request long-polls our database for up to 20 seconds, returning the results as soon as they are available or returning a HTTP 202 if no results were found after this time has expired.

Path parameters

uuidstringrequiredThe uuid of the health check for which to fetch the results

Request

Terminal window
curl --location 'https://engine.intelliprove.com/v1/results/wait/your-video-uuid' \
--header 'Accept: application/json' \
--header 'x-api-key: your-api-key'

Response

{
"timestamp_epoch": 1670921835,
"timestamp": "2022-12-13T08:57:15+00:00",
"heart_rate": 112,
"respiratory_rate": 13,
"heart_rate_variability": 161,
"ans_balance": 1,
"resonant_breathing_score": 30,
"morning_readiness": 7,
"acute_mental_stress_score": 3,
"mental_health_risk": 1
}

If the measurement was successfully processed, you will receive the biomarkers in json format, as shown in the example responses above with the HTTP 200 status code.

However, in case the video did not meet the Video input requirements, an error code will be returned to the body of the response. Refer to the example response above with HTTP 422 status.

The error code refers to why the video could not be processed. Examples of input requirements not being met, include too little light, excessive movement of the subject during the video, or a framerate that is too low.

A list of all possible error codes, their explanation and suggested messages towards the user can be found in the table below (click open with the arrow).


The buckets corresponding to a health check can be requested using the below endpoint.

Get all buckets

GEThttps://engine.intelliprove.com/v1/buckets/all/{uuid}

Get all the buckets corresponding to a health check.

Path parameters

uuidstringrequiredThe uuid of the health check for which to fetch the buckets

Request

Terminal window
curl --location 'https://engine.intelliprove.com/v1/results/wait/your-video-uuid' \
--header 'Accept: application/json' \
--header 'x-api-key: your-api-key'

Response

{
"uuid": "4b7b6dc34ddd413e8ce14dbac8e640c4",
"buckets": [
{
"name": "physical",
"timestamp_epoch": 1707081928,
"timestamp": "2024-02-04T22:25:28+01:00",
"status": "bad",
"biomarkers": [
{
"name": "heart_rate",
"value": 88.0,
"zone": "bad",
"unit": "bpm",
"range": [
36.0,
216.0
],
"optimum": "low"
},
{
"name": "respiratory_rate",
"value": 7.0,
"zone": "good",
"unit": "brpm",
"range": [
4.0,
48.0
],
"optimum": "middle"
}
],
"history": [
{
"biomarkers": {
"heart_rate": 77.0,
"respiratory_rate": 15.0
},
"timestamp_epoch": 1708030833,
"timestamp": "2024-02-15T22:00:33+01:00"
},
{
"biomarkers": {
"heart_rate": 62.0,
"respiratory_rate": 11.0
},
"timestamp_epoch": 1708029278,
"timestamp": "2024-02-15T21:34:38+01:00"
},
}
]
},
{
"name": "mental",
"timestamp_epoch": 1707081928,
"timestamp": "2024-02-04T22:25:28+01:00",
"status": "good",
"biomarkers": [...],
"history": [...]
},
...
]
}

The below endpoint allows you to fetch the summary and tips corresponding to each bucket.

Get bucket summaries

GEThttps://engine.intelliprove.com/v1/buckets/summary/{UUID}

Get the summary and tip for each of the buckets of a health check.

Path parameters

uuidstringrequiredThe uuid of the health check for which to fetch the buckets

Query parameters

include_tipsBooleanoptionalWhether to include a tip for each bucket
languagestringoptionalThe language in which to return the results

Request

Terminal window
curl --location 'https://engine.intelliprove.com/v1/results/wait/your-video-uuid' \
--header 'Accept: application/json' \
--header 'x-api-key: your-api-key'

Response

{
"uuid": "5059844c0c3441e28bda2679995622b5",
"summaries": [
{
"name": "physical",
"summary": "Your heart rate is 80 beats per minute, which indicates good cardiovascular health. In a normal range for healthy adults without stress. We've detected a breathing frequency of 12 breaths per minute which is very normal.",
"tip": "Based on your heart rate and respiratory rate, a healthy habit you could incorporate is practicing mindfulness meditation for 10 minutes each day to reduce stress and promote mental well-being."
},
{
"name": "mental",
"summary": "Your HRV is in a very good range, indicating a non-stressful condition. Your Autonomic Nervous System is relatively balanced, suggesting good regulation between the sympathetic and parasympathetic systems. You have a low mental health risk.",
"tip": "To further improve your mental health, consider engaging in activities like mindfulness meditation, deep breathing exercises, or regular physical exercise. These practices can help enhance relaxation and promote overall well-being."
},
{
"name": "energy_sleep",
"summary": "Your ANS balance of 1 suggests a relatively balanced activity between your sympathetic nervous system (SNS) and parasympathetic nervous system (PNS). Good overall energy and sleep.",
"tip": "You are doing a great job maintaining a balanced autonomic nervous system activity. Keep up the good work and continue prioritizing your energy and sleep for optimal well-being."
},
{
"name": "mindfulness",
"summary": "Your autonomic nervous system balance is relatively balanced, which is a good sign. However, your resonant breathing score indicates that there is room for improvement in synchronizing your breathing and heart rate variability. Your respiratory rate and heart rate are within normal ranges but slightly elevated, suggesting a moderate level of stress or lower conditioning.",
"tip": "To improve your resonant breathing score and further synchronize your breathing and heart rate variability, try practicing slower and deeper breaths at a pace of around 6 breaths per minute. This can help promote relaxation and enhance the balance of your autonomic nervous system."
}
]
}

Use this endpoint to obtain results related to a patient (user) and/or performer.

Get History

GEThttps://engine.intelliprove.com/v1/patient/history

Get the history of results for one or more patients based on patient and/or performer reference.

Query parameters

patient-refstringoptionalPatient for which the health checks are retrieved.
performer-refstringoptionalAdditional filter on performer reference.
startStringrequiredDate time string value in ISO 8601 format
pageIntegerrequiredPage of pagination
page_sizeIntegeroptionalNumber of items to return per page of pagination

Request

Terminal window
curl --location 'https://engine.intelliprove.com/v1/patient/history?page=0&patient-ref=your-patient-ref&start=2022-03-27%2015%3A10%3A29&sort_by=timestamp&sort_desc=false' \
--header 'x-api-key: your-api-key'

Response

{
"data": [
{
"timestamp_epoch": 1678100000,
"timestamp": "2023-03-06T10:00:00+01:00",
"heart_rate": 60,
"respiratory_rate": 13,
"heart_rate_variability": 48,
"ans_balance": 1,
"resonant_breathing_score": 30,
"patient": "a84kgh404a",
"performer": "pa7xb48209",
"morning_readiness": null,
"acute_mental_stress_score": 4,
"mental_health_risk": 4
},
{
"timestamp_epoch": 1678200030,
"timestamp": "2023-04-06T10:00:00+01:00",
"heart_rate": 57,
"respiratory_rate": 12,
"heart_rate_variability": 48,
"ans_balance": 1,
"resonant_breathing_score": 40,
"patient": "a84kgh404a",
"performer": "pa7xb48209",
"morning_readiness": 3,
"acute_mental_stress_score": 4,
"mental_health_risk": 4
}
],
"pagination": {
"page": 0,
"page_size": 10,
"sorted_by": "timestamp",
"sorting_order": "asc",
"sorting_options": [
"timestamp",
"performer"
]
}
}

If required, you can update the metadata for a measurement after completing processing.

Update result metadata

PUThttps://engine.intelliprove.com/v1/results/update/{uuid}

Update the performer and/or patient refernences for a measurement.

Body parameters

performer-refstringoptionalAn optional reference for the performer of the measurement
patient-refstringoptionalAn optional reference for the patient on whom the measurement was performed

Request

Terminal window
curl --location --globoff --request PUT 'https://engine.intelliprove.com/v1/results/update/{uuid}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"performer-ref":"string","patient-ref":"string"}'

Response

{
"detail": "No results were found found for this UUID"
}