Monitoring Notifications
Receive notifications for patients that you are monitoring
You will need to set up your callback endpoint(s) in order to receive Monitoring Notifications for the patients whom you are monitoring. Refer to the Event Notifications documentation on how to set up your endpoint(s).
ADT Notifications follow a different schema than those detailed below. The ADT notification schema is outlined on ADT Notifications.
Proactive Querying & Network Alert Notifications
Proactive Querying & Network Alert Notifications all follow the schema below, and will contain the Particle Patient ID and count of files retrieved.
Query Status Schema
{
"specversion":"1.0",
"id": "f834539f-a839-490b-80f9-b441cb9e435d",
"source": "api/notifications",
"type":"com.particlehealth.api.v2.query",
"subject": "Standard Query" // other values Proactive Query, Network Alert Query, Referral Alert Query, Deltas Query
"datacontenttype":"application/json",
"time":"2024-07-22T10:10:10Z",
"data":{
"file_count": "2",
"particle_patient_id": "9557a65e-55b7-4a3b-b0a1-f4dd2df5a2f8",
"purpose": "TREATMENT",
"query_id": "50ee4bd4-bd87-4e66-bab1-7e0309a9a656",
"status": "COMPLETE"
}
}
{
"specversion": "1.0,
"type": "com.particlehealth.api.v2.networkalert",
"subject": "Network Alert",
"source": "api/notifications",
"id": "0fc6f787-0f28-4dc2-a224-7c23e19c0e60"
"time": "2024-07-22T10:10:10Z"
"datacontenttype": application/json"
"data": {
"network_alert_id": "4eca404f-51fb-4d9a-a723-459fad24c09c",
"particle_patient_id": "test-particle-patient-id",
"network_organizations": [
{
"name": "Rochester Hospital",
"oid": "2.16.840.1.113883.3.8391.5.710576",
}
],
"alert_time": "2024-07-22T10:10:10Z",
}
}
Referral Alert Notifications
Referral Alert Notifications all follow the schema below, and will contain the Particle Patient ID, Referral Organization name and OID, referral status, and fileIds and resourceIds associated with the referral encounter.
{
"specversion": "1.0",
"type": "com.particlehealth.api.v2.referralalert",
"subject": "Referral Complete",
"source": "api/notifications",
"id": "ea77d12d-bb97-438e-82eb-1b0d10a7e3ee",
"time": "2024-07-22T10:10:10Z",
"datacontenttype": "application/json",
"data": {
"network_organization": {
"name": "Rochester Hospital",
"oid": "2.16.840.1.113883.3.8391.5.710576"
},
"particle_patient_id": "d939196d-0c80-4e82-b0e1-19f9ee271085",
"network_alert_ids": [
"1cac1ea7-f3a9-43b3-bca3-04d3ec4362c5",
],
"adt_message_ids": [
"6e7303bd-2c1a-49f2-add0-820babbdb95a",
],
"referral_id": "a17846c4-4270-427b-b191-bd5e76cf8f30",
"referral_status": "COMPLETE",
"resources": [
{
"file_id": "d6a96f73-eb18-4faa-b021-143e7777fe8b",
"resource_ids": [
"Encounter/b10fe2ef-47f9-4507-97c8-1a8c2215478e"
]
}
]
}
}
Retrieving Data Deltas
You can retrieve the corresponding encounter data associated with these notifications using the Deltas API, with the option to retrieve the full patient history or only the data delta.
Since
Parameter
📌 To retrieve the data delta (*i.e.*, the net new data identified since the last time data was retrieved for the patient), you must pass the `since` parameter in your request.
Since
Parameter-
If
_since="lastQuery"
(case-insensitive) is passed in, Particle will only return data added since the last time data was retrieved for the patient. -
If a
_since="YYYY-MM-DD"
parameter is passed in, Particle will only return new data retrieved since that date. -
If no
_since
parameter is passed in, all of the Patient's data should be returned.
Retrieve deltas in FHIR
PATH | api.particlehealth.com/deltas/patient/{particle_patient_id}/$everything |
---|---|
METHOD | GET |
Example Request
curl --request GET \
--url [https://api.particlehealth.com/deltas/patient/{particle_patient_id}/$everything](https://api.particlehealth.com/deltas/patient/%7Bparticle_patient_id%7D/$everything) \
--header 'accept: application/json'
Response Model
If there are no updates in the deltas
FHIR store, Particle will return an empty response. The empty response is returned as part of the standard API behavior.
NOTE if you only want to retrieve the data delta for a specific FHIR resource, you can also fetch any other GET resource
and fetch data from the persisted delta
FHIR store https://api.particlehealth.com/deltas/R4/{resource_type}/{resource_id}
Example Requests with Since Parameter
curl --request GET \
--url [https://api.particlehealth.com/deltas/patient/{particle_patient_id}/$everything](https://api.particlehealth.com/deltas/patient/%7Bparticle_patient_id%7D/$everything)?since=2023-12-31 \
--header 'accept: application/json'
Retrieve deltas in FLAT
PATH* | api.particlehealth.com/deltas/flat/{particle_patient_id}/ |
---|---|
METHOD | GET |
Example Request
curl --request GET \
--url https://api.particlehealth.com/deltas/flat/{particle_patient_id} \
--header 'accept: application/json'
curl --request GET \
--url [https://api.particlehealth.com/deltas/patient/{particle_patient_id}/$everything](https://api.particlehealth.com/deltas/patient/%7Bparticle_patient_id%7D/$everything)?since="lastQuery" \
--header 'accept: application/json'
NOTE if you only want to retrieve the data delta for a specific dataset (e.g. allergies
) you can use GET https://api.particlehealth.com/deltas/flat/{particle_patient_id}?[data_sets]
to retrieve individual data sets by adding on the specific data set to the end of the API call as a query parameter.
E.g. GET https://api.particlehealth.com/deltas/flat/{particle_patient_id}?**allergies**
Or, GET https://api.particlehealth.com/deltas/flat/{particle_patient_id}?**allergies&encounters**
Example Requests with Since Parameter
curl --request GET \
--url https://api.particlehealth.com/deltas/flat/{particle_patient_id}?since=2023-12-31 \
--header 'accept: application/json'
curl --request GET \
--url https://api.particlehealth.com/deltas/flat/{particle_patient_id}?since="lastQuery" \
--header 'accept: application/json'
Updated 1 day ago