---
title: "PATCH /clinic-config/appointment-reasons - Replace the reschedule and/or cancellation reason lists. A list left out of the body (null) is left unchanged, so a client that only knows about one list cannot wipe the other (ITE-905)."
method: PATCH
path: "/clinic-config/appointment-reasons"
tags: ["ClinicConfig"]
---

# PATCH /clinic-config/appointment-reasons - Replace the reschedule and/or cancellation reason lists. A list left out of the body (null) is left unchanged, so a client that only knows about one list cannot wipe the other (ITE-905).

`PATCH /clinic-config/appointment-reasons`

## Request

- Base URL: `https://api.clinicos.vet/backend/business`
- URL: `https://api.clinicos.vet/backend/business/clinic-config/appointment-reasons`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/docs/clinic-config/appointment-reasons/patch.ts> (a function with typed inputs; its response is checked against the schema)

## Request body

- AppointmentReasonSettingsDto: Clinic-configurable reasons for appointment changes (ITE-899).
  - `rescheduleReasons` string[], nullable: Reasons staff may pick when rescheduling. On read, the clinic's list or the defaults if it never set one. On write, the full list; empty means "offer no reasons"; omitted (null) leaves the clinic's list unchanged.
  - `cancellationReasons` string[], nullable: Reasons staff may pick when cancelling (ITE-905). Same read/write rules as List&lt;string&gt;? AppointmentReasonSettingsDto.RescheduleReasons — in particular, a PATCH that omits it (an older client that only knows about reschedule reasons) leaves the list unchanged.

## Response `200`

OK

- AppointmentReasonSettingsDto: Clinic-configurable reasons for appointment changes (ITE-899).
  - `rescheduleReasons` string[], nullable: Reasons staff may pick when rescheduling. On read, the clinic's list or the defaults if it never set one. On write, the full list; empty means "offer no reasons"; omitted (null) leaves the clinic's list unchanged.
  - `cancellationReasons` string[], nullable: Reasons staff may pick when cancelling (ITE-905). Same read/write rules as List&lt;string&gt;? AppointmentReasonSettingsDto.RescheduleReasons — in particular, a PATCH that omits it (an older client that only knows about reschedule reasons) leaves the list unchanged.

## Changes

- **2026-10-07** `021fabd866ff`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/changes/clinic-config/appointment-reasons/patch.md)

---

[API](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1.md) - [All operations](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/revisions/099cf36186e0?raw)
