---
title: "Sell an open combo position back to pUSD"
method: POST
path: "/combo/cash-out"
tags: ["Combo"]
---

# Sell an open combo position back to pUSD

`POST /combo/cash-out`

## Request

- Base URL: `https://execution.kairos.trade`
- URL: `https://execution.kairos.trade/combo/cash-out`
- Auth: API key in header `X-Client-Id` and API key in header `X-Api-Key` and API key in header `X-Api-Secret`

Sells `shares` of an open combo through the RFQ gateway. Preview it first with `POST /combo/cash-out-quote`.
**`minProceedsUsd` is checked against GROSS proceeds**, before the platform fee is deducted — so the amount that lands can be below the floor you set by the fee amount. Size the floor accordingly.
Same up-front rejection as the quote endpoint: a combo with a lost leg, or one that has fully resolved, cannot be cashed out (no maker quotes a worthless or settled combo) and fails fast rather than hanging. Unlike the quote endpoint this is not rate limited — selling a position is economically self-limiting.
**Auth & scope.** Requires `trade:execute` for `polymarket` plus the mutation gate.

## Request body

- OrderComboCashOutRequest: Body for `POST /combo/cash-out`.
  - `legPositionIds` string[], required
  - `shares` number, double, required: Shares to sell. Must be finite and > 0.
  - `minProceedsUsd` number, double, nullable: Reject the cash-out if GROSS proceeds fall below this USD floor (the platform fee is charged after the floor check). Recommended.

## Response `200`

The cash-out settled.

- OrderComboCashOutResponse: Response for `POST /combo/cash-out`.
  - `rfqId` string, required
  - `sharesSoldE6` string, required
  - `proceedsE6` string, required
  - `blendedPriceE6` string, required
  - `status` string, required
  - `txHash` string, nullable

## Other responses

- `400`: `VALIDATION_INVALID_ORDER` — the same set as `POST /combo/cash-out-quote`, plus the floor refusal: the maker's quote came back below `minProceedsUsd`, so nothing traded.
- `401`: No valid credential presented — missing/invalid API-key headers or an invalid/expired session token.
- `403`: Missing `trade:execute` scope, or API-key access to `polymarket` is disabled.
- `500`: `INTERNAL_ERROR` — credential load failed, the upstream positions read failed, the fee-tier lookup failed, gateway auth failed, or another unmapped gateway error.
- `503`: API-key access to `polymarket` could not be checked (fails closed).

---

[API](https://skmtc.dev/kairos/apis/kairos-order-execution-api.md) - [All operations](https://skmtc.dev/kairos/apis/kairos-order-execution-api/llms.txt) - [OpenAPI document](https://skmtc.dev/kairos/apis/kairos-order-execution-api/revisions/9ba7d463d505?raw)
