The CaseDecision model is a core entity in the system, representing the medical decisions made by healthcare professionals in response to specific patient cases. In the context of prescriptions, a CaseDecision is created whenever a doctor approves a medicine for a patient. This model serves as the authoritative record for tracking not only the approval or rejection of prescribed medications, but also the relevant medical details.
Data Model
The CaseDecision model encapsulates the details of a medical decision made in response to a patient's case, particularly focusing on prescription approvals. This model is designed to provide a comprehensive record of the decision, including its status, associated medication information, and relevant timestamps.
Field Name | Type | Description |
---|---|---|
id | string | Unique identifier for the case decision. |
isApproved | boolean | Indicates if the decision resulted in approval of the prescription (true/false). |
isNoDecision | boolean | Indicates if no decision was made (e.g., deferred or pending further information). |
startDate | timestamp | The date and time when the decision process started. |
endDate | timestamp | The date and time when the decision process concluded. |
decisionText | string | Free-text explanation or rationale for the decision. |
category | string | Category of the decision (e.g., medication Approved, Denied, No Decision). |
medInfo | object | Nested object containing additional metadata about the prescribed medicine. |
createdAt | timestamp | The timestamp when the CaseDecision record was created in the system. |
Case Decision Updates
To support real-time integrations and system interoperability, the platform triggers a webhook event named ADD_CASE_DECISION whenever a new decision is made for a case. This event notifies all registered subscribers that a decision has been added, allowing external systems (such as EHRs, partner health portals) to react promptly.
Sample Webhook Payload
{
"event": "ADD_CASE_DECISION",
"payload": {
"case": {
"id": "e4db2c86-a3d0-4705-a03a-b74f256d0114",
"type": "GLP",
"title": "Case for John Doe",
"status": "APPROVED",
"shortId": "ADA-0O69O",
"createdAt": "2025-06-16T07:11:21.997Z",
"updatedAt": "2025-06-16T07:12:31.455Z",
"assignedAt": "2025-06-16T07:11:41.882Z",
"inProgressAt": "2025-06-16T07:11:41.998Z",
"closedAt": "2025-06-16T07:12:31.394Z",
"isArchived": false,
"isEscalated": true,
"isImported": false,
"referralCode": null,
"closedBy": "OPFGQQlwy5fp2oWPlUVUP3I2ahh2",
"inProgressBy": "DgHxzGRtS5gFzdL7cReiPzJcA852",
"organizationId": "fed7c26c-1d87-4b7c-9da9-aa47e55d1380",
"archiveReason": null,
"productBundle": null,
"assignedTo": {
"id": "OPFGQQlwy5fp2oWPlUVUP3I2ahh2",
"firstName": "Drake",
"lastName": "Ramoray",
"title": "Dr."
},
"hrRep": {
"id": "OPFGQQlwy5fp2oWPlUVUP3I2ahh2",
"firstName": "Drake",
"lastName": "Ramoray",
"title": "Dr."
},
"assignedBy": {
"id": "DgHxzGRtS5gFzdL7cReiPzJcA852",
"firstName": "CareValidate Admin",
"lastName": "Test"
},
"assignees": [
{
"assignee": {
"id": "OPFGQQlwy5fp2oWPlUVUP3I2ahh2",
"firstName": "Drake",
"lastName": "Ramoray"
}
},
{
"assignee": {
"id": "ZZpBdRmCnnaF5zxJxh46Yi8ZR622",
"firstName": "Support",
"lastName": "User"
}
}
],
"submitter": {
"id": "biR9m0cu24a2IDOPMiHGnhSxRyR2",
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@carevalidate.com",
"dob": "1990-01-01T00:00:00.000Z",
"gender": "FEMALE",
"phoneNumber": null,
"address": null,
"address2": null,
"city": null,
"state": null,
"postalCode": null
},
"activity": [
{
"id": "898a27f0-d44a-40fc-b9c9-60edb79c4da2",
"type": "CREATE_CASE",
"isPHI": false,
"isRestricted": false,
"timestamp": "2025-06-16T07:11:21.997Z",
"valueBefore": null,
"valueAfter": null
},
{
"id": "5d50fcbc-ed56-42c0-8be2-ffa9cdaf803a",
"type": "OUTBOUND_EMAIL",
"isPHI": false,
"isRestricted": false,
"timestamp": "2025-06-16T07:11:22.300Z",
"valueBefore": null,
"valueAfter": null
},
{
"id": "7b8e5705-f5ee-4928-9bb9-c27922274296",
"type": "CHANGE_CASE_STATUS",
"isPHI": false,
"isRestricted": false,
"timestamp": "2025-06-16T07:11:41.882Z",
"valueBefore": "OPEN",
"valueAfter": "ASSIGNED"
},
...<redacted>
{
"id": "6dd1996e-4644-4bb5-8c56-4d1ea98f7f95",
"type": "ADD_CASE_DECISION",
"isPHI": false,
"isRestricted": false,
"timestamp": "2025-06-16T07:12:31.451Z",
"valueBefore": null,
"valueAfter": "APPROVED"
},
{
"id": "756c5b75-7385-4891-b540-15b996be47d8",
"type": "OUTBOUND_EMAIL",
"isPHI": false,
"isRestricted": false,
"timestamp": "2025-06-16T07:12:31.492Z",
"valueBefore": null,
"valueAfter": null
}
],
"decisions": [
{
"id": "cda1e22d-edf7-4448-a50c-e81af19f2de7",
"isApproved": true,
"isNoDecision": false,
"startDate": "2025-06-16T00:00:00.000Z",
"endDate": "2025-07-16T00:00:00.000Z",
"decisionText": "",
"category": null,
"createdAt": "2025-06-16T07:12:31.451Z",
"isPaid": false,
"visitType": "SYNC_PHONE",
"medInfo": [
{
"id": "2f76db73-690e-450a-ae95-1b40af11df17",
"medicine": "Semaglutide 2.5mg/ml (1ML) 2.5MG/ML",
"dosage": "Draw back 20 Units on Syringe, inject subcutaneously once weekly (0.2ml is 0.5mg per week)",
"refillCount": 1,
"pharmacyInstructions": "",
"dosingFrequency": "Weekly",
"treatmentPeriod": "Week 1",
"isPriorAuthRequested": true
}
],
"addedBy": {
"id": "OPFGQQlwy5fp2oWPlUVUP3I2ahh2",
"firstName": "Drake",
"lastName": "Ramoray",
"title": "Dr."
}
}
],
"comments": [],
"payments": [],
"attachments": [
{
"id": "eb4ea032-bee2-4f6f-9e49-af97b441cce2",
"isRestricted": false,
"isPHI": false,
"fileName": "test.pdf",
"isDeleted": false,
"createdAt": "2025-06-16T07:11:22.047Z",
"uploadedBy": {
"firstName": "John",
"lastName": "Doe"
},
"url": "PROTECTED_URL"
}
],
"responses": [
{
"id": "3938ad1b-344e-4193-a10f-5b9f2bcb0c51",
"isDraft": false,
"form": {
"id": "60e8fcc6-e851-4283-9101-9896482a5552",
"name": "GLP Weight Loss Intake Form Or Other Name",
"description": null
},
"responses": [
...<redacted>
]
}
],
"orders": [],
"formTokens": [],
"notes": []
}
}
}
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article