πͺWebhooks
What are webhooks?
Webhooks are HTTP callbacks that allow FibriCheck to push data to your application, instead of relying on continuous requests to check for updates or data changes.
In a webhook setup, an HTTP POST request will be sent to a specified URL when a specific event occurs. The callback URL on your side then receives the payload containing relevant data about the event, allowing the receiving application to process and act upon it.
FibriCheck supports webhook events on the following trigger:
A user performed a new measurement
A FibriCheck technician reviewed a measurement
A new summary report is available for a user
Data Structure
The sections below outline the data format our webhook will use when sending information to your webhook endpoint.
Measurements
{
"eventType": "measurement",
"measurementId": "",
"userId": "",
"extraData": {
"otherParam": "otherdata"
},
"externalPatientId": "",
"patientFirstName": "John",
"patientLastName": "Doe",
"measurementTimestamp": "2024-11-19T14:37:38Z",
"status": "analyzed|reviewed",
"indicator": "normal|quality|urgent|warning",
"heartRate": 60,
"mostSevereLabel": {
"key": "regular|bradycardia|...",
"color": "green|blue|orange|red|grey"
},
"context": {
"activity": "sitting|standing|...",
"symptoms": [
"confused"
],
"symptomSeverity": "1"
},
"reportUrl": "https://api.fibricheck.com/files/v1/682dc5dd5530b1e811e74bd2-e23a9816-7da8-4406-bae2-f799d0ea60ac/file"
}
Notes
The
measurementId
is a unique ID per performed measurement.The
userId
is the FibriCheckuserId
that can be used to construct the web portal link later on.For a single measurement that a user performed, potentially two webhook calls can be triggered. One when the measurement is analysed, and one when the measurement has been reviewed. For both webhook calls, the
measurementId
value will remain the same.The
extraData
object contains the fields that are stored in the user profile using thefc_data_extra_{TPM_prefix}_*
key in the deep link. The key names are converted from snake_case to camelCase.The
externalPatientId
is the identification of the user in the telemonitoring platform, which can be used for mapping the measurement to the correct user. It is mapped from thefc_data_extra_{TPM_prefix}_patient_id
key in the deep link.Details on the specific values of the different keys can be found here.
βΌοΈThe
context
object should be considered optional and can be undefined or only partially filled in when the webhook is executed on an analyzed measurement. This is because if the measurement analysis in the cloud finalizes before the user has provided all the context in the app, the webhook will be triggered before the user has been able to add the context (activity or symptoms). Details on the possible values of the context object can be found here.
Reports
{
"eventType": "report",
"reportId": "55e44f3a2902010005e329ce",
"userId": "5811e231e6e0ab000530a473",
"groupId": "55273edb46e0fb1035df209f"
"extraData": {
"otherParam": "otherdata"
},
"externalPatientId": "",
"patientFirstname": "John",
"patientLastname": "Doe",
"startTimestamp": "2024-11-19T14:37:38Z",
"endTimestamp": "2024-11-26T14:37:38Z",
"trigger": "MANUAL|PRESCRIPTION_ENDED|PERIOD_DAYS_PASSED_7|PERIOD_DAYS_PASSED_30",
"reportUrl": "https://api.fibricheck.com/v1/58e64f3a5908010005e329ce/pdf"
}
Notes:
The
userId
is the FibriCheckuserId
that can be used to construct the web portal link later on.The
extraData
object contains the fields that are stored in the user profile using thefc_data_extra_{TPM_prefix}_*
key in the deep link. The key names are converted from snake_case to camelCase.The
externalPatientId
is the identification of the user in the telemonitoring platform, which can be used for mapping the measurement to the correct user. It is mapped from thefc_data_extra_{TPM_prefix}_patient_id
key in the deep link.The trigger key indicates for what reason the report was generated and has one of the following values:
MANUAL
- a manual report generation was triggered through the API or through the FibriCheck PortalPRESCRIPTION_ENDED
- Report at the end of a prescriptionPERIOD_DAYS_PASSED_7
- Weekly report during an active prescriptionPERIOD_DAYS_PASSED_30
- Monthly report during an active prescription
βΌοΈThe
reportUrl
link is an API endpoint that needs to be authenticated. This link cannot be used to download the report directly in a browser
Authentication
FibriCheck supports the following authentication methods for calling external webhooks:
A query parameter in the https URL
A bearer token in the
Authorization
header
All webhook requests will originate from the same source IP (environment-specific). This enables you to enable IP whitelisting on the webhook endpoint for additional security. The following IP addresses are in use:
Development:
52.48.67.214
Production:
52.28.109.191
Configuration
For security reasons, a webhook can only be configured by FibriCheck staff.
If you want to configure a webhook integration, reach out to your FibriCheck contact or contact us at [email protected].
Last updated