Skip to main content
POST
https://api.pmx.trade
/
v2
/
markets
/
{slug}
/
claim
curl -X POST "https://api.pmx.trade/v2/markets/btc-100k-march/claim" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "wallet": "YourWalletPubkey..."
  }'
{
  "success": true,
  "data": {
    "slug": "btc-100k-march",
    "wallet": "YourWalletPubkey...",
    "outcome": "Yes",
    "payoutUsdc": 50,
    "tokenMint": "YesTokenMintAddress...",
    "userTokenBalance": 100000,
    "marketLimit": 100000,
    "nextStep": {
      "action": "transferTokens",
      "tokenMint": "YesTokenMintAddress...",
      "tokensToTransfer": 100000,
      "confirmEndpoint": "/btc-100k-march/claim/confirm",
      "hint": "Transfer ALL tokens to platform wallet and submit transferTxHash to /claim/confirm"
    }
  }
}
Use this endpoint to check if you have winning tokens to claim and get the required token transfer details.
slug
string
required
The market slug (e.g., btc-100k-march)

Request Body

wallet
string
required
Your Solana wallet address to check for claimable winnings
curl -X POST "https://api.pmx.trade/v2/markets/btc-100k-march/claim" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "wallet": "YourWalletPubkey..."
  }'
{
  "success": true,
  "data": {
    "slug": "btc-100k-march",
    "wallet": "YourWalletPubkey...",
    "outcome": "Yes",
    "payoutUsdc": 50,
    "tokenMint": "YesTokenMintAddress...",
    "userTokenBalance": 100000,
    "marketLimit": 100000,
    "nextStep": {
      "action": "transferTokens",
      "tokenMint": "YesTokenMintAddress...",
      "tokensToTransfer": 100000,
      "confirmEndpoint": "/btc-100k-march/claim/confirm",
      "hint": "Transfer ALL tokens to platform wallet and submit transferTxHash to /claim/confirm"
    }
  }
}

Response Fields

outcome
string
The winning outcome (e.g., “Yes” or “No”)
payoutUsdc
number
USDC amount you will receive after claiming
tokenMint
string
The winning token mint address
userTokenBalance
number
Your current balance of winning tokens
marketLimit
number
The market’s total liquidity limit (used in payout calculation)
nextStep
object
Instructions for completing the claim

Error Responses

Market Not Resolved
{
  "success": false,
  "error": {
    "code": "MARKET_NOT_RESOLVED",
    "message": "Market is not resolved"
  }
}
No Claimable Balance
{
  "success": false,
  "error": {
    "code": "NO_CLAIMABLE_BALANCE",
    "message": "No claimable winnings for this wallet"
  }
}
Already Claimed
{
  "success": false,
  "error": {
    "code": "ALREADY_CLAIMED",
    "message": "Winnings already claimed for this market"
  },
  "claim": {
    "claimedAt": "2026-01-20T15:30:00Z",
    "txHash": "PreviousClaimTxSignature..."
  }
}
To complete the claim, transfer ALL your winning tokens to the platform wallet (see nextStep instructions), then call the /claim/confirm endpoint with the transaction signature.