---
title: "Update case"
method: PUT
path: "/user/cases/{id}"
tags: ["user-cases"]
---

# Update case

`PUT /user/cases/{id}`

Apply a buyer action to an existing case.

Use this endpoint for buyer-side case progression (for example accepting, rejecting, or escalating outcomes).

Rules:
- Case must belong to the authenticated user.
- Returns `409` when an accepted outcome can no longer be modified.

Side effects:
- Escalation actions trigger case update notifications.
- Returns the refreshed case record with outcomes and attachments.

## Path parameters

- `id` string, required — Case ID

## Request body

- union
  - object
    - `action` 'escalate', required
  - object
    - `action` 'outcome', required
    - `outcome` union, required
      - object
        - `type` 'RETURN', required
        - `comment` string
        - `amount` integer, required
      - object
        - `type` 'REFUND', required
        - `comment` string
        - `amount` integer, required
      - object
        - `type` 'REPLACEMENT', required
        - `comment` string
  - object
    - `action` 'accept', required
    - `outcome` object, required
      - `type` 'RETURN' | 'REFUND' | 'REPLACEMENT', required
      - `id` string, cuid2, required
  - object
    - `action` 'reject', required
    - `outcome` object, required
      - `type` 'RETURN' | 'REFUND' | 'REPLACEMENT', required
      - `id` string, cuid2, required

## Response `200`

Updated case

- UpdatedUserCase
  - `id` string, cuid2, required
  - `workflowId` string, required
  - `purchaseId` string, required
  - `reason` 'SNAD' | 'DAMAGED' | 'WRONG_ITEM' | 'NOT_RECEIVED' | 'OTHER' | 'CHARGEBACK', required
  - `comment` string, nullable
  - `status` 'OPEN' | 'REMEDIATION' | 'SETTLED' | 'CLOSED' | 'ESCALATED', required
  - `createdAt` string, date-time, nullable, required
  - `updatedAt` string, date-time, nullable, required
  - `outcomes` object[], required
    - `id` string, cuid2, required
    - `type` 'RETURN' | 'REFUND' | 'REPLACEMENT', required
    - `party` 'SELLER' | 'BUYER' | 'SYSTEM', required
    - `status` 'PENDING' | 'ACCEPTED' | 'REJECTED' | 'RESOLVED', required
    - `caseId` string, cuid2, required
    - `amount` integer, required
    - `comment` string, nullable
    - `createdAt` string, date-time, nullable, required
    - `updatedAt` string, date-time, nullable, required
    - `deliveryAddress` unknown
  - `attachments` object[], required
    - `url` string, uri, required
    - `party` 'SELLER' | 'BUYER' | 'SYSTEM', required
    - `createdAt` union, required
      - string, date-time
      - string, date-time

## Other responses

- `404` — Case not found
- `409` — Outcome already accepted

---

[API](https://skmtc.net/managem/apis/managem-api.md) · [All operations](https://skmtc.net/managem/apis/managem-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/managem/managem-api/versions/6367b514f6ea/schema)
