Skip to main content
GET
/
closed-positions
List closed positions
curl --request GET \
  --url https://data-api.forka.st/closed-positions
[
  {
    "proxyWallet": "0x56687bF447db6fFa42FfE2204a05edAa20f55839",
    "asset": "0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917:0",
    "conditionId": "0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917",
    "size": 610.2,
    "avgPrice": 0.39,
    "initialValue": 237.98,
    "currentValue": 0,
    "cashPnl": 418.56,
    "totalBought": 1120.4,
    "realizedPnl": 418.56,
    "percentPnl": 37.35,
    "percentRealizedPnl": 37.35,
    "curPrice": 0.68,
    "redeemable": false,
    "mergeable": false,
    "title": "Will the Fed cut rates in September?",
    "slug": "fed-rate-cut-sep-2024",
    "icon": "https://cdn.forka.st/markets/fed.png",
    "eventSlug": "fomc-2024-policy",
    "outcome": "Yes",
    "outcomeIndex": 0,
    "oppositeOutcome": "No",
    "oppositeAsset": "0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917:1",
    "timestamp": 1718121600,
    "endDate": "2024-09-18T18:00:00Z"
  },
  {
    "proxyWallet": "0x56687bF447db6fFa42FfE2204a05edAa20f55839",
    "asset": "0x8eee3789813eead2d47db3bdf6a1c5021f564ef18e2aefc8b80b9dcd5d6f8ac5:1",
    "conditionId": "0x8eee3789813eead2d47db3bdf6a1c5021f564ef18e2aefc8b80b9dcd5d6f8ac5",
    "size": 980.5,
    "avgPrice": 0.47,
    "initialValue": 460.84,
    "currentValue": 0,
    "cashPnl": 512.91,
    "totalBought": 1685.75,
    "realizedPnl": 512.91,
    "percentPnl": 30.43,
    "percentRealizedPnl": 30.43,
    "curPrice": 0.9,
    "redeemable": false,
    "mergeable": false,
    "title": "Will turnout exceed 60% in the French election?",
    "slug": "france-turnout-60",
    "icon": "https://cdn.forka.st/markets/france-election.png",
    "eventSlug": "french-presidential-2024",
    "outcome": "No",
    "outcomeIndex": 1,
    "oppositeOutcome": "Yes",
    "oppositeAsset": "0x8eee3789813eead2d47db3bdf6a1c5021f564ef18e2aefc8b80b9dcd5d6f8ac5:0",
    "timestamp": 1715668800,
    "endDate": "2024-07-07T20:00:00Z"
  }
]
Call https://data-api.forka.st/closed-positions to retrieve positions that have been completely exited. Each entry includes realized PnL, the exit timestamp, and the presentation data (title, eventSlug, outcome, etc.) needed for UI rendering.

Filter options

  • user is required and must be the wallet you are inspecting.
  • market accepts the same CSV list of condition IDs as the live positions endpoint.
  • title supports a loose substring match for quick lookups.
  • Use limit (max 50) and offset (max 100,000) to page through long histories.

Sorting

Pick the sort column with sortBy. The defaults favor REALIZEDPNL, but you can switch to PRICE, AVGPRICE, or TIMESTAMP. Combine sortDirection=ASC|DESC to control ordering. Because this view is built from cached trade data rather than live settlement, treat it as informational until GA.

Query Parameters

user
string
required

Wallet address whose positions should be returned.

Example:

"0x56687bf447db6ffa42ffe2204a05edaa20f55839"

market
string[]

Comma-separated list of condition IDs.

0x-prefixed 64-character hex string.

title
string

Substring search against market title (max 100 chars).

Maximum string length: 100
limit
integer
default:10

Maximum number of rows to return (max 50).

Required range: 0 <= x <= 50
offset
integer
default:0

Cursor offset for pagination (max 100,000).

Required range: 0 <= x <= 100000
sortBy
enum<string>
default:REALIZEDPNL

Sort column.

Available options:
REALIZEDPNL,
TITLE,
PRICE,
AVGPRICE,
TIMESTAMP
sortDirection
enum<string>
default:DESC

Sort direction.

Available options:
ASC,
DESC

Response

Closed positions were found.

proxyWallet
string

0x-prefixed EVM address (40 hex chars).

Example:

"0x56687bf447db6ffa42ffe2204a05edaa20f55839"

asset
string
conditionId
string

0x-prefixed 64-character hex string.

Example:

"0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917"

size
number
avgPrice
number
initialValue
number
currentValue
number
cashPnl
number
totalBought
number
realizedPnl
number
percentPnl
number
percentRealizedPnl
number
curPrice
number
redeemable
boolean
mergeable
boolean
title
string
slug
string
icon
string
eventSlug
string
outcome
string
outcomeIndex
integer
oppositeOutcome
string
oppositeAsset
string
timestamp
integer<int64>
endDate
string<date-time>