API
Account
Read your Seeryx account from code: cash, positions, open orders, activity, settled rounds, profit and loss, and the public profiles and leaderboard.
Overview
- One read for the state.
GET /api/accountreturns cash, positions and open orders from one consistent snapshot: the same object the WebSocket pushes on every change. - History is paged.
/api/activity,/api/settledand/api/feedare newest first with a cursor.headsin the account snapshot tells you when there is something new to read. - Fees in your history. Each activity row has
fee: positive for a taker fee you paid, negative for a maker rebate you received./api/pnlsums both. - Public profiles. Anyone can read a trader's results, positions and trades; cash, deposits and open orders stay private.
Account endpoints
The signed-in account only. Money in USDC, shares with up to 4 decimals, prices in cents, times in Unix milliseconds.
/api/accountCash, positions and open orders in one read
curl "https://seeryx.com/api/account" \
-H "X-Auth-Token: $TOKEN"{ "positions": [{ "slug": "btc-updown-5m-1791916200", "side": "down", "shares": 50.3462, "cost": 18.126554 }],
"orders": [{ "id": 25538, "slug": "btc-updown-5m-1791916200", "side": "down", "action": "buy", "shares": 10, "limit": 48, "createdAt": 1791916330045 }],
"balance": { "available": 474.097965, "locked": 0, "total": 474.097965, "currency": "USDC" },
"heads": { "activity": 116, "settled": null } }- One consistent snapshot, the same object the WebSocket pushes. heads are the newest activity and settled ids: when one changes, read /activity or /settled again.
/api/balanceCash
curl "https://seeryx.com/api/balance" \
-H "X-Auth-Token: $TOKEN"{ "total": 474.097965, "available": 474.097965, "locked": 0, "currency": "USDC" }- Open buy orders hold no cash; locked is always 0. See Trading for the cash rule.
/api/positionsOpen positions
curl "https://seeryx.com/api/positions" \
-H "X-Auth-Token: $TOKEN"[{ "slug": "btc-updown-5m-1791916200", "side": "up", "shares": 10, "cost": 4.665126 }]- cost is what the shares cost in USDC, fees and rebates included.
/api/ordersOpen orders, newest first
curl "https://seeryx.com/api/orders" \
-H "X-Auth-Token: $TOKEN"[{ "id": 25538, "slug": "btc-updown-5m-1791916200", "side": "down", "action": "buy", "shares": 10, "limit": 48, "createdAt": 1791916330045 }]- shares is what is still open; limit in cents.
/api/activityTrades, splits, merges, payouts and cancels, newest first
| Field | Type | Description |
|---|---|---|
limit | number | Rows per page, 1-200 |
before | number | Cursor: nextBefore of the previous page |
paged | 1 | Answer { items, nextBefore }; without it a plain array of the latest rows |
slug | string | One round or event market |
prefix | string | One market, e.g. btc-updown-5m- |
curl "https://seeryx.com/api/activity?paged=1&limit=50" \
-H "X-Auth-Token: $TOKEN"{ "items": [{ "id": 116, "time": 1791916330063, "type": "buy", "slug": "btc-updown-5m-1791916200", "side": "up", "shares": 10, "price": 47, "amount": -4.665126, "pnl": null, "fee": -0.034874, "tx": "5Kq3...", "txStatus": "confirmed" }], "nextBefore": 116 }- type: buy, sell, split, merge, settle, void, cancel, expire or revert (a trade the program refused, undone). nextBefore null means the last page.
- amount is the change of cash, fees included; fee is the taker fee paid (positive) or the maker rebate received (negative), null without one. tx is the Solana transaction that settled the row, with txStatus pending, confirmed or failed.
/api/settledSettled positions, newest first
| Field | Type | Description |
|---|---|---|
limit | number | Rows per page, 1-200 |
before | number | Cursor: nextBefore of the previous page |
paged | 1 | As in /activity |
slug | string | One round |
prefix | string | One market |
curl "https://seeryx.com/api/settled?paged=1" \
-H "X-Auth-Token: $TOKEN"{ "items": [{ "id": 21, "slug": "btc-updown-5m-1791915600", "side": "up", "shares": 10, "cost": 4.7, "payout": 10, "outcome": "up", "settledAt": 1791915905877, "hedged": false }], "nextBefore": null }- One item is one round. A round held on both sides is one item: hedged true, side null, cost and payout of both sides together.
/api/feedTrades and deposits or withdrawals in one list, newest first
| Field | Type | Description |
|---|---|---|
limit | number | 1-200, default 100 |
before | string | Cursor: next of the previous page |
curl "https://seeryx.com/api/feed?limit=50" \
-H "X-Auth-Token: $TOKEN"{ "items": [{ "kind": "trade", "id": 116, "time": 1791916330063, "type": "buy", ... }, { "kind": "transfer", "id": 2, "time": 1791916168000, "type": "deposit", "amount": 500, "status": "completed", ... }], "next": "1791916168000:0:2" }/api/pnlRealized profit and loss, fees, win rate and a chart
| Field | Type | Description |
|---|---|---|
period | 1D | 1W | 1M | ALL | Default ALL |
from | number | Instead of period: start, Unix ms |
to | number | End, Unix ms, default now |
buckets | number | Chart points, 1-200, default 60 |
curl "https://seeryx.com/api/pnl?period=1D" \
-H "X-Auth-Token: $TOKEN"{ "from": 1791829989226, "to": 1791916389226, "realized": -3.110355, "breakdown": { "sell": 0, "merge": -3.110355, "settle": 0 },
"events": 53, "trades": 13, "volume": 55.845724, "fees": { "paid": 0.354231, "rebates": 0.29792 },
"closed": 3, "closedWins": 0, "winRate": 0, "series": [{ "t": 1791916330038, "value": -3.110355 }], "best": {...}, "worst": {...}, ... }- fees.paid is the taker fees you paid, fees.rebates the maker rebates you received. Up and Down held together in one round count as one position.
/api/transactionsLatest deposits and withdrawals
| Field | Type | Description |
|---|---|---|
limit | number | 1-200, default 50 |
curl "https://seeryx.com/api/transactions" \
-H "X-Auth-Token: $TOKEN"{ "transactions": [{ "id": 2, "type": "deposit", "currency": "USDC", "amount": 500, "status": "completed", "tx_hash": "4eCe...", "created_at": "2026-10-13 18:29:28", "completed_at": "2026-10-13 18:29:28" }] }- Times here are UTC text.
/api/rewards/liquidityYour liquidity points and what your resting orders earn now
curl "https://seeryx.com/api/rewards/liquidity" \
-H "X-Auth-Token: $TOKEN"{ "today": 3.25, "total": 41.8, "since": "2026-10-10", "last7": [{ "day": "2026-10-07", "points": 0 }, ...],
"ratePerHour": 4.5, "scoringOrders": 3, "twoSidedMarkets": 1, "earns": true,
"eligibleMarkets": [{ "label": "BTC 5 min", "market": "btc-5m" }, ..., { "label": "Event markets", "market": "events" }],
"rules": { "maxSpreadCents": 3, "perDollarHour": 0.1, "twoSidedBonus": 0.5, "sampleSeconds": 60, "minRestSeconds": 60, "minValue": 5, "minShares": 5, "sideCap": 500 } }- The scoring is explained under Market making. Days are UTC.
Leaderboard and profiles
Public and read-only. A profile shows results, positions and trades; cash, deposits and open orders stay private.
/api/leaderboardTop 100 traders by realized profit and loss
| Field | Type | Description |
|---|---|---|
period | 1D | 1W | 1M | ALL | Default ALL |
curl "https://seeryx.com/api/leaderboard?period=1W"{ "period": "1W", "traders": [{ "rank": 1, "name": "satoshi_bot", "handle": "satoshi_bot", "address": "Cp8bSK...z3ji", "avatar": null, "pnl": 53.950184, "volume": 1084.342964, "trades": 542 }] }- Cached for 15 seconds.
/api/profilesFind traders by name prefix or full wallet address
| Field | Type | Description |
|---|---|---|
q | string | sat, @sat or a wallet address |
curl "https://seeryx.com/api/profiles?q=sat"[{ "name": "satoshi_bot", "handle": "satoshi_bot", "address": "Cp8bSK...z3ji", "avatar": null }]- At most 6 rows.
/api/profiles/:handleA trader
| Field | Type | Description |
|---|---|---|
handle | string | Username (any case) or the full wallet address |
curl "https://seeryx.com/api/profiles/satoshi_bot"{ "name": "satoshi_bot", "handle": "satoshi_bot", "address": "Cp8bSK...z3ji", "avatar": null, "joined": 1791138618000, "pnl": 29.216906, "volume": 1129.246924, "trades": 549, "openPositions": 0, "markets": 49, "rank": 1, "traders": 4 }| Status | When |
|---|---|
| 404 | Unknown trader |
/api/profiles/:handle/pnlA trader's profit and loss (as /pnl)
| Field | Type | Description |
|---|---|---|
handle | string | Username (any case) or the full wallet address |
period | 1D | 1W | 1M | ALL | Default ALL |
curl "https://seeryx.com/api/profiles/satoshi_bot/pnl?period=1M"/api/profiles/:handle/positionsA trader's open positions (as /positions)
| Field | Type | Description |
|---|---|---|
handle | string | Username (any case) or the full wallet address |
curl "https://seeryx.com/api/profiles/satoshi_bot/positions"/api/profiles/:handle/activityA trader's trades and payouts, without cancels
| Field | Type | Description |
|---|---|---|
handle | string | Username (any case) or the full wallet address |
limit | number | Rows per page, 1-200 |
before | number | Cursor: nextBefore of the previous page |
curl "https://seeryx.com/api/profiles/satoshi_bot/activity?limit=50"/api/profiles/:handle/settledA trader's settled positions (as /settled)
| Field | Type | Description |
|---|---|---|
handle | string | Username (any case) or the full wallet address |
limit | number | Rows per page, 1-200 |
before | number | Cursor: nextBefore of the previous page |
curl "https://seeryx.com/api/profiles/satoshi_bot/settled"