GET /v2/trade/positions
Returns a paginated list of outcome token positions associated with your account.Query parameters
string
Filter by position status.
active (default) returns positions with a non-zero current balance and a live mark price. closed returns fully exited or redeemed positions with realized PnL.number
Maximum number of results to return per page. Defaults to
50.number
Zero-based offset for pagination.
Response
array
Array of position objects.
Active positions include a live
cur_price mark sourced from the CLOB mid-quote. Closed positions omit mark-price fields and populate realized_pnl instead.Example
POST /v2/trade/positions/redeem
Redeems a resolved Conditional Token Framework (CTF) position and delivers the pUSD payout to your proxy wallet. The call is synchronous: it waits for the Polygon transaction to confirm before returning. Winning positions receive a payout of 1 pUSD per share; losing positions receive 0. Required headersRequest body
string
required
The condition to redeem, formatted as
0x followed by exactly 64 hex characters.number
required
Zero-based index of the outcome token you hold (e.g.
0 for the first outcome, 1 for the second).boolean
required
Set to
true for negative-risk (multi-outcome) markets. Set to false for standard binary markets.string
Number of shares to redeem as a decimal string. Omit to redeem your entire position.
Response
string
Polygon transaction hash of the on-chain redemption.
string
STATE_CONFIRMED once the transaction is included in a block.string
Echo of the submitted condition ID.
number
Echo of the submitted outcome index.
boolean
Echo of the submitted flag.
string
pUSD payout in 6-decimal base units as a string (e.g.
"500000000" = 500 pUSD). Returns "0" for a losing position.Example
POST /v2/trade/positions/split
Splits pUSD collateral into one share of every outcome token in a condition. After splitting, you hold a complete outcome set, useful for then selling one side on the CLOB while retaining the other. Splitting is the on-chain equivalent of buying both sides simultaneously. Required headersRequest body
string
required
The condition to split into (
0x + 64 hex characters).string
required
pUSD amount to split, as a decimal string (e.g.
"100.00"). You will receive amount shares of each outcome token.boolean
required
true for negative-risk markets; false for standard binary markets.Response
string
Polygon transaction hash.
string
STATE_CONFIRMED once the transaction is mined.string
Echo of the submitted condition ID.
string
Echo of the submitted pUSD amount split.
boolean
Echo of the submitted flag.
Example
POST /v2/trade/positions/merge
Merges a complete set of outcome tokens back into pUSD collateral. You must hold at leastamount shares of every outcome in the condition. This is the reverse of splitting and lets you exit a delta-neutral position without hitting the CLOB.
Required headers
Request body
string
required
The condition whose outcome tokens you are merging (
0x + 64 hex characters).string
required
Number of complete outcome sets to merge, as a decimal string. You receive this many pUSD in return.
boolean
required
true for negative-risk markets; false for standard binary markets.Response
string
Polygon transaction hash.
string
STATE_CONFIRMED once the transaction is mined.string
Echo of the submitted condition ID.
string
Echo of the submitted share set count.
boolean
Echo of the submitted flag.
Example
The
amount field for merge represents the number of complete outcome sets (one share of each outcome), not a dollar amount. Merging 100 sets of a binary market burns 100 YES tokens and 100 NO tokens and returns 100 pUSD.