Skip to main content
POST
Full-replacement semantics: the submitted workingDays set replaces the existing schedule. Requires Manage permission on the Appointments module. Every block’s locationId must be a location assigned to the doctor, and blocks of the same day must not overlap — same or different location (the doctor cannot be in two places at once). Violations return a localized 400 with code: VALIDATION_ERROR.

Path Parameters

doctorId
string
required
The doctor’s user ID

Body

workingDays
array
required
Schedule blocks (min 1). Each block: day (mondaysunday), locationId (must be assigned to the doctor), startTime/endTime ("HH:MM", end after start), optional lunchStartTime/lunchEndTime (both or neither, inside the block).
exceptions
array
ISO 8601 dates. When omitted, existing exceptions are preserved.