Skip to main content
POST
Open an early cashout auction on an active on-chain position instead of waiting for settlement. The auction is broadcast to every market maker, and each may bid one all-in price. The stream surfaces the highest live bid; ties go to the earliest. Accepting it via Commit drives the exit on-chain at that price or better. The request is keyed on the position’s on-chain position_id — a 16-byte hex string (the 0x prefix is optional). The position must be active (executed), owned by you, have a counterparty MM assigned, and not be within the near-expiry buffer of its market end.

Authentication

API key required. Pass your API key in the X-API-Key header.
A Privy JWT (Authorization: Bearer <jwt>) is also accepted — see Authentication.

Request body

string
required
The position’s on-chain id — a 16-byte hex string (32 hex chars), with or without a 0x prefix.

Response

object

Response codes

201 Created opens a new auction. 200 OK returns the auction that was already live for this position — opening is idempotent per (position, user), so a double-tap resumes the existing auction rather than splitting bidder attention across two. Check the status code, or expires_at, before assuming you have a fresh ~10 s window.

Errors