Polymarket Endpoints

Polymarket Positions API

Positions returns open holdings for a Polymarket wallet with current value and unrealized PnL, proxied from data-api.polymarket.com.

GET/api/v2/polymarket/positions/wallet/{wallet_address}Try It

Get Polymarket positions

Open positions for a Polymarket wallet with size and current value, proxied from data-api.polymarket.com.

Live GET Request

Try it

Live Response
Click Try It to run this GET request against the API.
Request
curl 'https://api.thepredictionmarkets.com/api/v2/polymarket/positions/wallet/0x1234567890abcdef1234567890abcdef12345678' \
  -H 'X-API-Key: YOUR_TPM_API_KEY'
Response
{
  "positions": [
    {
      "market": "0x123...",
      "outcome": "Oklahoma City Thunder",
      "size": 250,
      "avg_price": 0.47,
      "current_price": 0.495,
      "value": 123.75,
      "realized_pnl": 0,
      "unrealized_pnl": 6.25
    }
  ],
  "count": 1,
  "wallet_address": "0x1234567890abcdef1234567890abcdef12345678"
}

Query Parameters

NameTypeRequiredDefaultExampleDescription
wallet_addressstringYes-0x1234567890abcdef1234567890abcdef12345678Polymarket proxy wallet address in the URL path.
size_thresholdnumberNo0.010.01Minimum normalized position size to include.

Response Fields

FieldTypeExampleDescription
positionsobject[]-Open position records for the wallet.
positions.marketstring-Condition ID of the market.
positions.outcomestring-Outcome label for this position.
positions.sizenumber-Number of shares held.
positions.avg_pricenumber-Average entry price.
positions.unrealized_pnlnumber-Mark-to-market unrealized PnL.

Build with TPM

Get your API key

Start with Kalshi and Polymarket market data, then add unified spreads, signals, alerts, and watchlists as your workflow grows.