Skip to main content
GET
/
markets
/
current-positions
Get Current Positions
curl --request GET \
  --url https://www.aionmarket.com/bvapi/markets/current-positions \
  --header 'Authorization: Bearer <token>'
[
  {
    "marketId": "<string>",
    "title": "<string>",
    "outcome": "<string>",
    "size": 123,
    "avgPrice": 123,
    "currentPrice": 123,
    "unrealizedPnl": 123
  }
]

Documentation Index

Fetch the complete documentation index at: https://docs.aionmarket.com/llms.txt

Use this file to discover all available pages before exploring further.

Returns the list of currently open positions for a wallet. Polymarket positions are proxied from Polymarket Data API, Kalshi positions are read from mk_kalshi_position. Use the venue parameter to switch between markets.

Query Parameters

user
string
required
Wallet address used by the data source. Polymarket: EVM address; Kalshi: Solana address.
market
string
Market conditionId filter; supports comma-separated values. Mutually exclusive with eventId.
title
string
Keyword filter applied to market title. Max 100 chars.
sizeThreshold
number
default:"1"
Minimum position size threshold.
redeemable
boolean
default:"false"
Polymarket only: return only redeemable positions.
mergeable
boolean
default:"false"
Polymarket only: return only mergeable positions.
limit
integer
default:"100"
Per-page result count (0–500).
offset
integer
default:"0"
Pagination offset (0–10000).
sortBy
string
default:"TOKENS"
Sort field. One of CURRENT, INITIAL, TOKENS, CASHPNL, PERCENTPNL, TITLE, RESOLVING, PRICE, AVGPRICE.
sortDirection
string
default:"DESC"
Sort direction. One of ASC, DESC.
venue
string
default:"polymarket"
Trading venue: polymarket or kalshi.

Response

data
array
Array of position records. Polymarket records and Kalshi records share core fields (marketId / outcome / size / avgPrice / currentPrice / unrealizedPnl) but venue-specific fields may differ.

Authorizations

Authorization
string
header
default:YOUR_API_KEY
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

user
string
required

Wallet address. polymarket uses EVM address; kalshi uses Solana address.

venue
enum<string>
default:polymarket

Filter by venue

Available options:
polymarket,
kalshi
market
string

Market filter. For kalshi this maps to marketTicker (supports comma-separated values).

title
string

Title keyword filter. For kalshi, fuzzy match on marketTicker.

sizeThreshold
number

Minimum position size filter.

redeemable
boolean

Polymarket-only filter.

mergeable
boolean

Polymarket-only filter.

limit
integer
default:100
Required range: 0 <= x <= 500
offset
integer
default:0
Required range: 0 <= x <= 10000
sortBy
enum<string>
default:TOKENS
Available options:
CURRENT,
INITIAL,
TOKENS,
CASHPNL,
PERCENTPNL,
TITLE,
RESOLVING,
PRICE,
AVGPRICE
sortDirection
enum<string>
default:DESC
Available options:
ASC,
DESC

Response

200 - application/json

Current positions list. Field shape varies slightly by venue; both include marketId/outcome/size/avgPrice/currentPrice/unrealizedPnl.

marketId
string
title
string
outcome
string
size
number
avgPrice
number
currentPrice
number
unrealizedPnl
number