Skip to main content
GET
Get Open Positions (All Exchanges)
Fetch normalized open positions for a wallet across all connected derivatives venues. The aggregator fans out to Lighter, Aster, Hyperliquid, and Avantis, returning consistent leverage, collateral, and PnL metrics in one payload.

All Exchanges

  • Method: GET
  • Endpoint: /api/trading/positions/all/{walletAddress}
  • Authentication: Required

Path Parameters

Example

Sample Response

The positions array contains one entry per venue position. Zero-size positions are automatically filtered out.

Single Exchange

  • Method: GET
  • Endpoint: /api/trading/{exchange}/positions/{walletAddress}
  • Authentication: Required

Path Parameters

Example

Sample Response


Aster - Get Positions

Get open positions on Aster exchange.

Endpoint

GET /api/aster/perp/:walletId/positions

Path Parameters

Query Parameters

Example Request

Success Response

Response Fields

Avantis - Get Positions

Get open positions on Avantis exchange (perpetual trading on Base).

Endpoint

GET /api/trading/positions/all/{walletAddress} Avantis positions are returned within the aggregated positions response under data.positions.avantis.

Avantis Position Response Shape

Avantis Position Fields

Avantis markPrice returned from the backend matches entryPrice — live mark prices are not provided by the backend. For real-time mark prices, use the client-side Pyth oracle price feed.

Credential Payload

Supply only the credential blocks for venues you want to query. The service reads them per request and does not persist any keys.

Errors

  • 400{ "success": false, "error": "Invalid wallet address format" }
  • 401{ "success": false, "error": "Missing or invalid credentials for Aster" }
  • 500{ "success": false, "error": "Failed to fetch open positions: timeout" }
For live updates subscribe to the WebSocket positions topic; REST calls return a snapshot at the time of the request.

Authorizations

X-API-KEY
string
header
required

API key for authentication. Also requires X-API-SECRET, X-API-TIMESTAMP, and X-API-SIGNATURE headers for private endpoints.

Path Parameters

walletAddress
string
required

Wallet address to query across all venues

Response

Open positions grouped across exchanges

success
boolean
walletAddress
string
positions
object[]
totalPositions
integer

Number of active positions