Skip to main content
GET
The schedule editor is rendered from this descriptor — the frontend never hardcodes day lists, location options or validation patterns. The schedule-blocks section is repeatable: fields defines one block row and the UI renders N rows with add/remove. Location options are restricted server-side to the doctor’s assigned locations. When the doctor has a single location, the field arrives disabled: true with that location preselected — the backend decides that rule, not the frontend.

Path Parameters

doctorId
string
required
The doctor’s user ID

Response

locale
string
es-CO or en-US — all labels arrive pre-localized.
sections
array
One repeatable schedule-blocks section (repeatable: true, minItems: 1) whose fields describe a block row: day (select, 7 localized options), locationId (select, only assigned locations), startTime/endTime/ lunchStartTime/lunchEndTime (time fields with "HH:MM" validation hints).
currentSchedule
object | null
The doctor’s current schedule (same shape as Get Doctor Schedule), used to populate the initial rows. null when no schedule exists yet.
Validation hints in the schema are UX helpers only — the backend re-validates everything on save (assigned location, overlaps, lunch-within-block).