Move any appointment (staff and partner keys)
`expectedVersion` is required: a mismatch answers `SCHEDULING_STALE_VERSION` (409) instead of overwriting a change you never read. **202** is a success: `{ data: { operationId, status } }` where `status` is `PENDING` or `UNCERTAIN` — poll, do NOT retry. Required scope: `scheduling.manage`.
/scheduling/appointments/{appointmentId}/rescheduleAuthorization
ApiKeyAuth An external API key, sent as Authorization: Bearer mflo_…. Scopes are checked per route; see each operation’s description.
In: header
Path Parameters
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/scheduling/appointments/497f6eca-6276-4993-bfeb-53cbbbba6f08/reschedule" \ -H "Content-Type: application/json" \ -d '{ "slotToken": "string", "expectedVersion": 0 }'{ "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "start": "string", "startIso": "string", "spokenLabel": "string", "specialist": "string", "appointmentType": "string", "durationMin": 0, "price": "string", "location": { "name": "string", "address": "string" }, "instructions": "string", "status": "string", "contactId": "b5ec5d98-4bee-4da1-ad24-dde86346cb1d" }}Cancel any appointment (staff and partner keys) POST
The tenant-wide door. **202** is a success: `{ data: { operationId, status } }` where `status` is `PENDING` or `UNCERTAIN` — poll, do NOT retry. Required scope: `scheduling.manage`.
Upcoming appointments for a phone number POST
Reads only — a POST because the phone number belongs in a body, not in a URL that logs keep. Each entry carries an `actionToken` — the handle the `scheduling.modify` endpoints require — and the patient’s masked name. Required scope: `scheduling.read`.