Skip to main content
POST
/
api
/
users
/
{userId}
/
redeem
curl -X POST \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "venue": "polymarket",
    "tokenId": "71321045679252212594626385..."
  }' \
  "https://trade.predexon.com/api/users/USER_ID/redeem"
{
  "transactionHash": "0x1234567890abcdef...",
  "venue": "polymarket",
  "tokenId": "71321045679252...",
  "title": "Will Bitcoin reach $100k?",
  "outcome": "Yes",
  "sizeRedeemed": "100.50",
  "result": "won",
  "amountRedeemed": "100.50",
  "status": "completed"
}
curl -X POST \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "venue": "polymarket",
    "tokenId": "71321045679252212594626385..."
  }' \
  "https://trade.predexon.com/api/users/USER_ID/redeem"
{
  "transactionHash": "0x1234567890abcdef...",
  "venue": "polymarket",
  "tokenId": "71321045679252...",
  "title": "Will Bitcoin reach $100k?",
  "outcome": "Yes",
  "sizeRedeemed": "100.50",
  "result": "won",
  "amountRedeemed": "100.50",
  "status": "completed"
}

Redemption Flow

1

Check positions

Use Get Positions to find positions with status: redeemable.
2

Verify result

Only positions with result: won return USDC. Losing positions return 0.
3

Redeem

Call this endpoint with the position identifier.
4

Check balance

USDC is credited immediately. Verify with Get Balance.
You can redeem losing positions to clear them from your portfolio, but you’ll receive 0 USDC since they’re worthless.

Authorizations

x-api-key
string
header
required

Path Parameters

userId
string
required

Unique identifier for the user

Body

application/json
venue
enum<string>
required

Trading venue: polymarket or kalshi

Available options:
polymarket,
kalshi
tokenId
string

Token ID to redeem (required for Polymarket)

ticker
string

Market ticker (required for Kalshi)

outcome
enum<string>

Outcome to redeem: Yes or No (required for Kalshi)

Available options:
Yes,
No

Response

200 - application/json

Position redeemed

transactionHash
string

Blockchain transaction hash for the redemption

venue
string

Trading venue where the redemption occurred

tokenId
string

Polymarket token ID (Polymarket redemptions only)

ticker
string

Kalshi market ticker (Kalshi redemptions only)

title
string

Market question/title

outcome
string

The outcome side that was redeemed

sizeRedeemed
string

Number of tokens that were burned

result
string

Position result: won or lost

amountRedeemed
string

USDC received from redemption (0 for losing positions)

status
string

Always 'completed' for successful redemptions