Events
warning
Satxuma is still under active development. It is not yet HIPAA compliant and should only be used with dummy data.
An event represents something that happens at a scheduled day and/or time. Events can be used for things like special appointments, staff meetings, or evaluations. Do not, however, use events to plan treatments - use treatments instead.
Data model
Satxuma stores events under an organization:
Properties
An Event has the following properties:
- id (
string
) — A unique identifier for the event. - title (
string
) — Short description of the event (e.g., “Initial PT Evaluation”). - notes (
string
) — Optional free-text notes about the event. - organizationId (
string
) — The ID of the parent organization. - startDate (
string
) — The calendar date the event starts (YYYY-MM-DD
). - startTime (
string
) — The time of day the event starts (HH:mm
). - endDate (
string
) — The calendar date the event ends (YYYY-MM-DD
). - endTime (
string
) — The time of day the event ends (HH:mm
). - minutes (
number \| null
) — Duration of the event in minutes, if tracked. - timeZone (
TimeZone
) — IANA time zone for the event. - isBusy (
boolean \| null
) — Whether the event blocks scheduling (e.g., a therapist is unavailable). - tags (
string[]
) — Optional tags for categorization or filtering. - facility (
IdPlusName \| null
) — The facility where the event takes place (if applicable). - participants
- If
facility = null
: must include a non-empty array of participants. - If
facility
is set: participants are optional. - Each participant is an
IdPlusNamePlusRole
(links a person to their role).
- If
Examples
Example 1: Patient Therapy Session (with facility)
{
"id": "e001",
"title": "PT Treatment Session",
"notes": "Focus on gait training",
"organizationId": "org123",
"startDate": "2025-09-10",
"startTime": "10:00",
"endDate": "2025-09-10",
"endTime": "11:00",
"minutes": 60,
"timeZone": "America/Chicago",
"isBusy": true,
"tags": ["therapy", "PT"],
"facility": { "id": "f001", "name": "Sunrise Outpatient Clinic" },
"participants": [
{ "id": "p123", "name": "Jane Doe", "role": "Patient" },
{ "id": "t456", "name": "John Smith", "role": "Therapist" }
]
}
Example 2: Staff Meeting (no facility)
{
"id": "e002",
"title": "Weekly Team Meeting",
"notes": "Discuss case load and upcoming audits",
"organizationId": "org123",
"startDate": "2025-09-12",
"startTime": "09:00",
"endDate": "2025-09-12",
"endTime": "10:00",
"minutes": 60,
"timeZone": "America/Chicago",
"isBusy": false,
"tags": ["meeting"],
"facility": null,
"participants": [
{ "id": "t456", "name": "John Smith", "role": "Therapist" },
{ "id": "d789", "name": "Dr. Alice Jones", "role": "Physician" }
]
}