clinik.practitionerRoles
PractitionerRole defines the role a practitioner plays at a specific organization or location — their specialty, availability, and contact info in that context. A single practitioner can have multiple roles (e.g. cardiologist at Hospital A, consultant at Clinic B).create
| Field | Type | Required | Description |
|---|---|---|---|
practitionerId | string | Yes | Reference to the Practitioner |
organizationName | string | No | Organization name |
role | string | Yes | Role code (e.g. “doctor”, “nurse”, “admin”) |
specialty | string[] | No | Specialties in this role |
locationName | string | No | Location/facility name |
phone | string | No | Contact phone for this role |
email | string | No | Contact email for this role |
period | object | No | Period during which the role is valid ({ start, end }) |
availableTime | Array | No | Multiple availability schedules (see below) |
notAvailable | Array | No | Periods when the practitioner is not available |
availabilityExceptions | string | No | Free-text description of availability exceptions |
availableDays | string[] | No | Legacy: days available (mon-sun). Use availableTime instead. |
availableStartTime | string | No | Legacy: start time (HH:mm:ss). Use availableTime instead. |
availableEndTime | string | No | Legacy: end time (HH:mm:ss). Use availableTime instead. |
Available Time
Each entry inavailableTime supports:
| Field | Type | Description |
|---|---|---|
daysOfWeek | string[] | Days: mon, tue, wed, thu, fri, sat, sun |
allDay | boolean | Whether available all day (24h) |
availableStartTime | string | Start time (HH:mm:ss) |
availableEndTime | string | End time (HH:mm:ss) |
Not Available
Each entry innotAvailable supports:
| Field | Type | Required | Description |
|---|---|---|---|
description | string | Yes | Reason (e.g. “On vacation”, “Conference”) |
during | object | No | Period: { start, end } |
Example
read
update
delete
search
| Parameter | Type | Description |
|---|---|---|
patientId | string | Not applicable — use other filters |
status | string | Filter by active status |
count | number | Results per page (max: 100) |
cursor | string | Pagination cursor |