← Technical API reference

Frontend module · STATIC DECLARATIONS

Schedule Api client API reference · mansoq-hmis-web

26 client route/call declarations with path parameters, named payload/response types and source references. Exact server acceptance and permissions require the matched backend contract.

Static API contract — behavior review pending. Source baseline f6e9f05f76d4.

Enable JavaScript to inspect structured operation, parameter, schema and permission evidence. Download this reference and its evidence.

Client contract scope

These 26 declarations come from repositories/teleicu/mansoq-hmis-web/src/types/scheduling/scheduleApi.ts. Client types and noAuth flags describe the caller; they do not authorize a server action. Dynamic paths and missing backend matches are retained as review work, not repaired into invented endpoints.

Operation map

Client method HTTP method Path pattern Resolution
default.templates.create POST /api/v1/facility/{facilityId}/schedule/ literal
default.templates.retrieve GET /api/v1/facility/{facilityId}/schedule/{id}/ literal
default.templates.list GET /api/v1/facility/{facilityId}/schedule/ literal
default.templates.update PUT /api/v1/facility/{facilityId}/schedule/{id}/ literal
default.templates.delete DELETE /api/v1/facility/{facilityId}/schedule/{id}/ literal
default.templates.setChargeItemDefinition POST /api/v1/facility/{facilityId}/schedule/{id}/set_charge_item_definition/ literal
default.templates.availabilities.create POST /api/v1/facility/{facilityId}/schedule/{scheduleId}/availability/ literal
default.templates.availabilities.delete DELETE /api/v1/facility/{facilityId}/schedule/{scheduleId}/availability/{id}/ literal
default.exceptions.create POST /api/v1/facility/{facilityId}/schedule_exceptions/ literal
default.exceptions.list GET /api/v1/facility/{facilityId}/schedule_exceptions/ literal
default.exceptions.delete DELETE /api/v1/facility/{facilityId}/schedule_exceptions/{id}/ literal
default.slots.getSlotsForDay POST /api/v1/facility/{facilityId}/slots/get_slots_for_day/ literal
default.slots.availabilityStats POST /api/v1/facility/{facilityId}/slots/availability_stats/ literal
default.slots.createAppointment POST /api/v1/facility/{facilityId}/slots/{slotId}/create_appointment/ literal
default.appointments.list GET /api/v1/facility/{facilityId}/appointments/ literal
default.appointments.retrieve GET /api/v1/facility/{facilityId}/appointments/{id}/ literal
default.appointments.update PUT /api/v1/facility/{facilityId}/appointments/{id}/ literal
default.appointments.cancel POST /api/v1/facility/{facilityId}/appointments/{id}/cancel/ literal
default.appointments.reschedule POST /api/v1/facility/{facilityId}/appointments/{id}/reschedule/ literal
default.appointments.generateToken POST /api/v1/facility/{facilityId}/appointments/{id}/generate_token/ literal
default.appointments.availableUsers GET /api/v1/facility/{facilityId}/appointments/available_users/ literal
default.appointments.getPublicScheduleableFacilityUser GET /api/v1/facility/{facility_id}/schedulable_users/{user_id}/ literal
default.appointments.getAppointments GET /api/v1/patient/{patientId}/get_appointments/ literal
default.appointments.get_tokens GET /api/v1/patient/{patientId}/get_tokens/ literal
default.appointments.setTags POST /api/v1/facility/{facilityId}/appointments/{external_id}/set_tags/ literal
default.appointments.removeTags POST /api/v1/facility/{facilityId}/appointments/{external_id}/remove_tags/ literal

default.templates.create

POST /api/v1/facility/{facilityId}/schedule/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

request type: ScheduleTemplateCreateRequest. client-side declaration; not proof of accepted server payload.

ScheduleTemplateCreateRequest declared fields:

Field Type Required Description
name string true —
valid_from string true —
valid_to string true —
availabilities ScheduleAvailabilityBase[] true —
resource_type SchedulableResourceType true —
resource_id string true —
is_public boolean true —

response type: ScheduleTemplate. client-side declaration; not proof of accepted server payload.

ScheduleTemplate declared fields:

Field Type Required Description
id string true —
name string true —
valid_from string true —
valid_to string true —
availabilities ScheduleAvailability[] true —
created_by UserReadMinimal true —
updated_by UserReadMinimal true —
charge_item_definition ChargeItemDefinitionRead true —
revisit_charge_item_definition ChargeItemDefinitionRead true —
revisit_allowed_days number true —
is_public boolean true —

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.retrieve

GET /api/v1/facility/{facilityId}/schedule/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

response type: ScheduleTemplate. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.list

GET /api/v1/facility/{facilityId}/schedule/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

response type: PaginatedResponse<ScheduleTemplate>. client-side declaration; not proof of accepted server payload.

PaginatedResponse declared fields:

Field Type Required Description
count number true —
results TItem[] true —

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.update

PUT /api/v1/facility/{facilityId}/schedule/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: ScheduleTemplateUpdateRequest. client-side declaration; not proof of accepted server payload.

ScheduleTemplateUpdateRequest declared fields:

Field Type Required Description
name string true —
valid_from string true —
valid_to string true —
is_public boolean true —

response type: ScheduleTemplate. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.delete

DELETE /api/v1/facility/{facilityId}/schedule/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: void. client-side declaration; not proof of accepted server payload.

response type: void. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.setChargeItemDefinition

POST /api/v1/facility/{facilityId}/schedule/{id}/set_charge_item_definition/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: ScheduleTemplateSetChargeItemDefinitionRequest. client-side declaration; not proof of accepted server payload.

ScheduleTemplateSetChargeItemDefinitionRequest declared fields:

Field Type Required Description
charge_item_definition string true —
re_visit_allowed_days number true —
re_visit_charge_item_definition string | null true —

response type: ScheduleTemplate. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.availabilities.create

POST /api/v1/facility/{facilityId}/schedule/{scheduleId}/availability/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, scheduleId. Transport strings are declared here; semantic identifier types require the server contract.

request type: ScheduleAvailabilityCreateRequest. client-side declaration; not proof of accepted server payload.

Composed/inherited schema references: ScheduleAvailabilityBase. Exact generic composition is retained in the structured reference and requires server-side confirmation.

response type: ScheduleAvailability. client-side declaration; not proof of accepted server payload.

Composed/inherited schema references: ScheduleAvailabilityBase. Exact generic composition is retained in the structured reference and requires server-side confirmation.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.templates.availabilities.delete

DELETE /api/v1/facility/{facilityId}/schedule/{scheduleId}/availability/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, scheduleId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: void. client-side declaration; not proof of accepted server payload.

response type: void. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.exceptions.create

POST /api/v1/facility/{facilityId}/schedule_exceptions/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

request type: ScheduleExceptionCreateRequest. client-side declaration; not proof of accepted server payload.

ScheduleExceptionCreateRequest declared fields:

Field Type Required Description
resource_type SchedulableResourceType true —
resource_id string true —
reason string true —
valid_from string true —
valid_to string true —
start_time Time true —
end_time Time true —

response type: ScheduleException. client-side declaration; not proof of accepted server payload.

ScheduleException declared fields:

Field Type Required Description
id string true —
reason string true —
valid_from string true —
valid_to string true —
start_time Time true —
end_time Time true —

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.exceptions.list

GET /api/v1/facility/{facilityId}/schedule_exceptions/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

response type: PaginatedResponse<ScheduleException>. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.exceptions.delete

DELETE /api/v1/facility/{facilityId}/schedule_exceptions/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: void. client-side declaration; not proof of accepted server payload.

response type: void. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.slots.getSlotsForDay

POST /api/v1/facility/{facilityId}/slots/get_slots_for_day/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

request type: object. client-side declaration; not proof of accepted server payload.

default.slots.getSlotsForDay.request declared fields:

Field Type Required Description
resource_type SchedulableResourceType true —
resource_id string true —
day string true —

response type: GetSlotsForDayResponse. client-side declaration; not proof of accepted server payload.

GetSlotsForDayResponse declared fields:

Field Type Required Description
results TokenSlot[] true —

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.slots.availabilityStats

POST /api/v1/facility/{facilityId}/slots/availability_stats/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

request type: AvailabilityHeatmapRequest. client-side declaration; not proof of accepted server payload.

AvailabilityHeatmapRequest declared fields:

Field Type Required Description
from_date string true —
to_date string true —
resource_type SchedulableResourceType true —
resource_id string true —

response type: AvailabilityHeatmapResponse. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.slots.createAppointment

POST /api/v1/facility/{facilityId}/slots/{slotId}/create_appointment/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, slotId. Transport strings are declared here; semantic identifier types require the server contract.

request type: AppointmentCreateRequest. client-side declaration; not proof of accepted server payload.

AppointmentCreateRequest declared fields:

Field Type Required Description
patient string true —
note string true —
tags string[] true —

response type: Appointment. client-side declaration; not proof of accepted server payload.

Composed/inherited schema references: AppointmentBase, PatientListRead. Exact generic composition is retained in the structured reference and requires server-side confirmation.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.list

GET /api/v1/facility/{facilityId}/appointments/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

Declared default query fields: ordering (string). These are defaults observed at this route object, not an exhaustive query allowlist.

response type: PaginatedResponse<AppointmentRead>. client-side declaration; not proof of accepted server payload.

Composed/inherited schema references: Appointment, PatientRead, TagConfig, UserReadMinimal, EncounterListRead. Exact generic composition is retained in the structured reference and requires server-side confirmation.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.retrieve

GET /api/v1/facility/{facilityId}/appointments/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

response type: AppointmentRead. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.update

PUT /api/v1/facility/{facilityId}/appointments/{id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: AppointmentUpdateRequest. client-side declaration; not proof of accepted server payload.

AppointmentUpdateRequest declared fields:

Field Type Required Description
status Appointment["status"] true —
note string true —

response type: Appointment. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.cancel

POST /api/v1/facility/{facilityId}/appointments/{id}/cancel/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: AppointmentCancelRequest. client-side declaration; not proof of accepted server payload.

AppointmentCancelRequest declared fields:

Field Type Required Description
reason "cancelled" | "entered_in_error" true —
note string false —

response type: Appointment. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.reschedule

POST /api/v1/facility/{facilityId}/appointments/{id}/reschedule/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: AppointmentRescheduleRequest. client-side declaration; not proof of accepted server payload.

AppointmentRescheduleRequest declared fields:

Field Type Required Description
new_slot string true —
previous_booking_note string true —
new_booking_note string true —
tags string[] true —

response type: Appointment. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.generateToken

POST /api/v1/facility/{facilityId}/appointments/{id}/generate_token/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, id. Transport strings are declared here; semantic identifier types require the server contract.

request type: TokenGenerate. client-side declaration; not proof of accepted server payload.

TokenGenerate declared fields:

Field Type Required Description
patient string false —
category string true —
note string false —
sub_queue string false —

Composed/inherited schema references: Token. Exact generic composition is retained in the structured reference and requires server-side confirmation.

response type: Appointment. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.availableUsers

Lists schedulable users for a facility

GET /api/v1/facility/{facilityId}/appointments/available_users/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId. Transport strings are declared here; semantic identifier types require the server contract.

response type: object. client-side declaration; not proof of accepted server payload.

UserReadMinimal declared fields:

Field Type Required Description
last_login string true —
profile_picture_url string true —
mfa_enabled boolean true —
deleted boolean true —
is_service_account boolean true —

Composed/inherited schema references: UserBase. Exact generic composition is retained in the structured reference and requires server-side confirmation.

default.appointments.availableUsers.response declared fields:

Field Type Required Description
users UserReadMinimal[] true —

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.getPublicScheduleableFacilityUser

GET /api/v1/facility/{facility_id}/schedulable_users/{user_id}/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facility_id, user_id. Transport strings are declared here; semantic identifier types require the server contract.

response type: UserReadMinimal. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.getAppointments

Get appointments across facilities

GET /api/v1/patient/{patientId}/get_appointments/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: patientId. Transport strings are declared here; semantic identifier types require the server contract.

response type: PaginatedResponse<Appointment>. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.get_tokens

Get tokens for a patient

GET /api/v1/patient/{patientId}/get_tokens/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: patientId. Transport strings are declared here; semantic identifier types require the server contract.

response type: PaginatedResponse<TokenRetrieve>. client-side declaration; not proof of accepted server payload.

Composed/inherited schema references: TokenRead, UserReadMinimal, Appointment, EncounterListRead, ScheduleResource. Exact generic composition is retained in the structured reference and requires server-side confirmation.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.setTags

POST /api/v1/facility/{facilityId}/appointments/{external_id}/set_tags/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, external_id. Transport strings are declared here; semantic identifier types require the server contract.

request type: object. client-side declaration; not proof of accepted server payload.

default.appointments.setTags.request declared fields:

Field Type Required Description
tags string[] true —

response type: unknown. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

default.appointments.removeTags

POST /api/v1/facility/{facilityId}/appointments/{external_id}/remove_tags/. typed route object; literal. multiple static method/path matches across source registrations; installed target and boundary require review.

Path parameters: facilityId, external_id. Transport strings are declared here; semantic identifier types require the server contract.

request type: object. client-side declaration; not proof of accepted server payload.

default.appointments.removeTags.request declared fields:

Field Type Required Description
tags string[] true —

response type: unknown. client-side declaration; not proof of accepted server payload.

Operational limitation: request validation, permission checks, error statuses and irreversible side effects belong to the server implementation. An unmatched or computed client route requires contract review before use.

Pinned source evidence

Links require access to the private source repository.