---
title: "Cancel a scheduled Calendly session"
method: POST
path: "/api/participant/sessions/{sessionId}/cancel"
tags: ["Participant Portal"]
---

# Cancel a scheduled Calendly session

`POST /api/participant/sessions/{sessionId}/cancel`

## Request

- Base URL: `https://api.production.yourmedley.com`
- URL: `https://api.production.yourmedley.com/api/participant/sessions/{sessionId}/cancel`
- Auth: HTTP bearer

Cancels the participant's Calendly booking and updates the session status. For 1:1 sessions, the slot reverts to "unscheduled" so it can be rebooked. For check-ins, the status is set to "cancelled" (record stays for history). Only works for sessions with scheduling_method = 'calendly' and status = 'scheduled'.

## Path parameters

- `sessionId` string, uuid, required

## Response `200`

Session canceled successfully

- object
  - `success` boolean
  - `data` object
    - `canceled` boolean
    - `session_id` string
    - `new_status` 'unscheduled' | 'cancelled'

## Other responses

- `400`: Bad request — session not cancelable (wrong method or status)
- `401`: Unauthorized — authentication required
- `403`: Forbidden — session does not belong to this participant
- `404`: Session not found
- `500`: Internal server error

---

[API](https://skmtc.dev/withmedley/apis/medley-api.md) - [All operations](https://skmtc.dev/withmedley/apis/medley-api/llms.txt) - [OpenAPI document](https://skmtc.dev/withmedley/apis/medley-api/revisions/40aaac5ca6bd?raw)
