REST APIPositions
Get positions by address
Get positions for a specific wallet address.
ApiKeyAuthx-api-key<token>API key authentication via the x-api-key header.
address*stringThe wallet's address. For a Predict account, use the account's address.
first?integerPage size, from 1 to 100. Defaults to 20. A value outside that range is clamped.
int32after?stringThe cursor from the previous page, to get the next one.
length <= 1024marketId?integerOnly positions in this market. Cannot be combined with marketIds.
int64marketIds?array<>Only positions in these markets (comma-separated or repeated, up to
100). Cannot be combined with marketId.
categoryId?stringOnly positions in the category with this slug, which markets return as categorySlug.
length <= 256isResolved?booleanSet to true for only positions in resolved markets, or false for only those in
unresolved markets. Both are listed by default.
includeLost?booleanAlso list positions in outcomes that settled as losing. Off by default, since those need no action from the holder.
sort?stringHow to order the positions. Defaults to EVENT_BLOCK_DESC, which lists the most
recently changed positions first.
"AMOUNT_DESC""EVENT_BLOCK_ASC""EVENT_BLOCK_DESC""SHARES_VALUE_DESC""RETURN_DESC"application/json; charset=utf-8- response
Response for GET /v1/positions
success*booleancursor?stringdata*array<>curl -X GET 'https://api.predict.fun/v1/positions/string'{ "success": true, "cursor": "string", "data": [ { "id": "string", "market": { "id": 0, "imageUrl": "string", "title": "string", "question": "string", "description": "string", "tradingStatus": "OPEN", "status": "REGISTERED", "isVisible": true, "isNegRisk": true, "isYieldBearing": true, "feeRateBps": 0, "makerFeeBps": 0, "resolution": { "name": "string", "indexSet": 0, "onChainId": "string", "status": "WON", "bestBid": { "price": 0.1, "size": 0.1 }, "bestAsk": { "price": 0.1, "size": 0.1 }, "team": { "id": 0, "name": "string", "abbreviation": "string", "alias": "string", "league": "string" }, "variantData": { "type": "ESPORTS_DOTA2", "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } }, "variantDetails": { "sports": { "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } } } }, "oracleQuestionId": "string", "conditionId": "string", "resolverAddress": "string", "outcomes": [ { "name": "string", "indexSet": 0, "onChainId": "string", "status": "WON", "bestBid": { "price": 0.1, "size": 0.1 }, "bestAsk": { "price": 0.1, "size": 0.1 }, "team": { "id": 0, "name": "string", "abbreviation": "string", "alias": "string", "league": "string" }, "variantData": { "type": "ESPORTS_DOTA2", "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } }, "variantDetails": { "sports": { "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } } } } ], "questionIndex": 0, "spreadThreshold": 0.1, "shareThreshold": 0, "isBoosted": true, "boostStartsAt": "string", "boostEndsAt": "string", "polymarketConditionIds": [ "string" ], "kalshiMarketTicker": "string", "categorySlug": "string", "seriesSlug": "string", "createdAt": "string", "decimalPrecision": 0, "marketVariant": "DEFAULT", "variantData": { "type": "CRYPTO_UP_DOWN", "priceFeedProvider": "PYTH", "startPrice": 0.1, "endPrice": 0.1, "priceFeedId": "string", "priceFeedSymbol": "string" }, "variantDetails": { "sports": { "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" }, "line": 0.1, "gameNumber": 0 } }, "team": { "id": 0, "name": "string", "abbreviation": "string", "alias": "string", "league": "string" }, "marketType": "SPORTS_MONEYLINE", "rewards": { "current": { "hourlyRate": 0, "startsAt": "string", "endsAt": "string" }, "schedule": [ { "hourlyRate": 0, "startsAt": "string", "endsAt": "string" } ] } }, "outcome": { "name": "string", "indexSet": 0, "onChainId": "string", "status": "WON", "bestBid": { "price": 0.1, "size": 0.1 }, "bestAsk": { "price": 0.1, "size": 0.1 }, "team": { "id": 0, "name": "string", "abbreviation": "string", "alias": "string", "league": "string" }, "variantData": { "type": "ESPORTS_DOTA2", "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } }, "variantDetails": { "sports": { "provider": "PREDICT_SPORTS", "team": { "id": 0, "name": "string", "abbreviation": "string", "providerTeamId": "string", "isHome": true, "record": { "wins": 0, "losses": 0, "draws": 0, "overtimeLosses": 0 }, "color": "string" } } } }, "amount": "string", "valueUsd": "string", "averageBuyPriceUsd": "string", "pnlUsd": "string" } ]}