---
title: "Save the participant's commitment for the session (AC"
method: PUT
path: "/api/participant/sessions/{sessionId}/commitment"
tags: ["Participant Active Session"]
---

# Save the participant's commitment for the session (AC

`PUT /api/participant/sessions/{sessionId}/commitment`

## Request

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

Participant-self-authored upsert. Writes through to
`session_participant_commitments` with `coach_user_id = NULL` and
`authored_by_user_id = participant`. MED-1216: `commitment_text` must be
non-empty (whitespace-only rejected, 400/AC1). The participant always
wins — this write overwrites any coach-entered value and transfers
ownership to the participant, locking the coach out thereafter (AC5).

## Path parameters

- `sessionId` string, uuid, required

## Request body

- ParticipantCommitmentUpsertRequest
  - `commitment_text` string, required: Plain text. Must be non-empty (MED-1216 / AC1) — whitespace-only is rejected. Self-authored: saving transfers ownership to the participant and locks the coach out.

## Response `200`

Updated commitment payload

- object
  - `success` boolean
  - `data` ParticipantCommitmentResponse
    - `commitment_text` string
    - `updated_at` string, date-time, nullable
    - `authored_by_coach` boolean: MED-1216 / AC8 — true when the coach entered this and the participant has not yet saved their own; drives the 'noted by your coach' review state. Always false after a self-save.

## Other responses

- `400`: commitment_text missing, wrong type, or empty/whitespace-only (MED-1216 / AC1)
- `401`: Unauthorized
- `403`: Not an active member of the session's group
- `404`: Session not found OR live_session_delivery flag off

---

[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)
